6
6
# so more than one .so cannot be linked into a single program.
7
7
# Shared objects with device kernels also did not seem to work--
8
8
# it can build, but the kernel launch is not successful. (with cuda 9.2)
9
- # Hence, build ed25519 ecdsa verify and chacha encryption device
9
+ # Hence, build ed25519 ecdsa verify and poh verify device
10
10
# code into a single binary.
11
11
12
12
V =debug
13
13
include gpu-common.mk
14
14
15
- CHACHA_TEST_BIN =cuda_chacha_test
16
15
ECC_TEST_BIN =cuda_ed25519_verify
17
16
LIB =cuda-crypt
18
17
19
18
CL_ECC_TEST_BIN =cl_ed25519_verify
20
19
CL_LIB =cl-crypt
21
20
22
- CHACHA_IF_DIR: =crypt-if
23
-
24
21
CL_HEADER_DIR: =opencl-platform
25
22
26
23
CUDA_HEADER_DIR: =cuda-headers
@@ -30,7 +27,7 @@ CUDA_DIR ?= /usr/local/cuda
30
27
31
28
CXX ?= g++
32
29
33
- CFLAGS_COMMON: =-DENDIAN_NEUTRAL -DLTC_NO_ASM -I $( CHACHA_IF_DIR )
30
+ CFLAGS_COMMON: =-DENDIAN_NEUTRAL -DLTC_NO_ASM
34
31
CFLAGS+ =$(CFLAGS_COMMON ) -I$(CUDA_HEADER_DIR ) -I$(CUDA_SHA256_DIR )
35
32
36
33
# use -DUSE_RDTSC for Windows compilation
@@ -41,8 +38,7 @@ CL_CFLAGS_release:=$(CL_CFLAGS_common) -O3
41
38
CL_CFLAGS_debug: =$(CL_CFLAGS_common ) -O0 -g
42
39
CL_CFLAGS: =$(CL_CFLAGS_$V )
43
40
44
- all : $(V ) /$(CHACHA_TEST_BIN ) \
45
- $(V)/$(ECC_TEST_BIN) \
41
+ all : $(V ) /$(ECC_TEST_BIN ) \
46
42
$(V)/$(CL_ECC_TEST_BIN) \
47
43
$(V)/lib$(LIB).so \
48
44
$(V)/lib$(CL_LIB).so
@@ -82,11 +78,6 @@ $V/cl_poh_verify.o: $(CL_POH_VERIFY_SRCS)
82
78
@mkdir -p $(@D )
83
79
$(CXX ) $(CL_CFLAGS ) -I$(ECC_DIR ) -c $< -o $@
84
80
85
- CL_CHACHA_SRCS: =$(CL_CRYPT_DIR ) /cl_chacha.cpp
86
- $V/cl_chacha.o : $(CL_CHACHA_SRCS )
87
- @mkdir -p $(@D )
88
- $(CXX ) $(CL_CFLAGS ) -I$(ECC_DIR ) -c $< -o $@
89
-
90
81
CL_SIGN_SRCS: =$(CL_ECC_DIR ) /sign.cpp $(ECC_DIR ) /fe.cu $(ECC_DIR ) /ed25519.h
91
82
$V/cl_sign.o : $(CL_SIGN_SRCS )
92
83
@mkdir -p $(@D )
@@ -101,31 +92,18 @@ $V/cl_gpu_ctx.o: $(addprefix $(CL_ECC_DIR)/,gpu_ctx.cpp gpu_ctx.h)
101
92
@mkdir -p $(@D )
102
93
$(CXX ) $(CL_CFLAGS ) -I$(ECC_DIR ) -c $< -o $@
103
94
104
- CHACHA_DIR: =cuda-crypt
105
- CHACHA_SRCS: =$(addprefix $(CHACHA_DIR ) /,chacha_cbc.cu common.cu) $(CHACHA_IF_DIR ) /chacha.h
106
-
107
- $V/chacha_cbc.o : $(CHACHA_SRCS )
108
- @mkdir -p $(@D )
109
- $(NVCC ) -rdc=true $(CFLAGS ) -c $< -o $@
110
-
111
95
$V/cl_init_platform.o : opencl-platform/cl_init_platform.cpp
112
96
@mkdir -p $(@D )
113
97
$(CXX ) $(CL_CFLAGS ) -c $< -o $@
114
98
115
- AES_SRCS: =$(addprefix $(CHACHA_DIR ) /,aes_cbc.cu aes_core.cu modes_lcl.h common.cu)
116
-
117
- $V/aes_cbc.o : $(AES_SRCS )
118
- @mkdir -p $(@D )
119
- $(NVCC ) -rdc=true $(CFLAGS ) -c $< -o $@
120
-
121
99
POH_DIR: =cuda-poh-verify
122
100
POH_SRCS: =$(addprefix $(POH_DIR ) /,poh_verify.cu)
123
101
124
102
$V/poh_verify.o : $(POH_SRCS )
125
103
@mkdir -p $(@D )
126
104
$(NVCC ) -rdc=true $(CFLAGS ) -c $< -o $@
127
105
128
- CL_CPU_GPU_OBJS =$(addprefix $V/,cl_init_platform.o cl_verify.o cl_gpu_ctx.o cl_sign.o cl_chacha.o cl_poh_verify.o)
106
+ CL_CPU_GPU_OBJS =$(addprefix $V/,cl_init_platform.o cl_verify.o cl_gpu_ctx.o cl_sign.o cl_poh_verify.o)
129
107
130
108
$V/lib$(CL_LIB ) .so : $(CL_CPU_GPU_OBJS )
131
109
$(CXX ) -shared $^ -L$(CUDA_DIR ) /lib64 -lOpenCL -o $@
@@ -137,17 +115,14 @@ $V/cl_ecc_main.o: $(CL_ECC_DIR)/main.cpp $(ECC_DIR)/ed25519.h
137
115
$V/$(CL_ECC_TEST_BIN ) : $V/cl_ecc_main.o $V/lib$(CL_LIB ) .so
138
116
$(CXX ) $(CL_CFLAGS ) -L$(CUDA_DIR ) /lib64 -L$V -pthread $< -l$(CL_LIB ) -lOpenCL -o $@
139
117
140
- CPU_GPU_OBJS =$(addprefix $V/,chacha_cbc.o aes_cbc.o verify.o poh_verify.o gpu_ctx.o sign.o seed.o keypair.o)
118
+ CPU_GPU_OBJS =$(addprefix $V/,verify.o poh_verify.o gpu_ctx.o sign.o seed.o keypair.o)
141
119
142
120
$V/crypt-dlink.o : $(CPU_GPU_OBJS )
143
121
$(NVCC ) -Xcompiler " -fPIC" $(CFLAGS ) --device-link $^ --output-file $@
144
122
145
123
$V/lib$(LIB ) .so : $V/crypt-dlink.o $(CPU_GPU_OBJS )
146
124
$(NVCC ) -Xcompiler " -fPIC" --shared --output-file $@ $^
147
125
148
- $V/$(CHACHA_TEST_BIN ) : $(CHACHA_DIR ) /test.cu $V/lib$(LIB ) .so
149
- $(NVCC ) $(CFLAGS ) -L$V -l$(LIB ) $< -o $@
150
-
151
126
$V/ecc_main.o : $(addprefix $(ECC_DIR ) /,main.cu ed25519.h)
152
127
@mkdir -p $(@D )
153
128
$(NVCC ) -rdc=true $(CFLAGS ) -c $< -o $@
@@ -159,8 +134,7 @@ $V/$(ECC_TEST_BIN): $V/ecc_main.o $V/lib$(LIB).so
159
134
clean :
160
135
rm -rf $V
161
136
162
- test : $V/$(ECC_TEST_BIN ) $V/$(CHACHA_TEST_BIN )
163
- cd $(V ) && ./$(CHACHA_TEST_BIN ) 64 \
137
+ test : $V/$(ECC_TEST_BIN )
164
138
cd $(V ) && ./$(ECC_TEST_BIN ) 1 1 1 1 1 1
165
139
cd $(V ) && ./$(ECC_TEST_BIN ) 64 1 1 1 1 0
166
140
cd $(V ) && ./$(ECC_TEST_BIN ) 100201 1 1 4 10 1
0 commit comments