mirror of
				https://github.com/PurpleI2P/i2pd.git
				synced 2025-11-04 08:30:46 +00:00 
			
		
		
		
	x25519 unti test
This commit is contained in:
		
							parent
							
								
									3b46e9f351
								
							
						
					
					
						commit
						7fa5b06359
					
				
					 2 changed files with 41 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
CXXFLAGS += -Wall -Wextra -pedantic -O0 -g -std=c++11 -D_GLIBCXX_USE_NANOSLEEP=1 -I../libi2pd/ -pthread
 | 
			
		||||
 | 
			
		||||
TESTS = test-gost test-gost-sig test-base-64
 | 
			
		||||
TESTS = test-gost test-gost-sig test-base-64 test-x25519
 | 
			
		||||
 | 
			
		||||
all: $(TESTS) run
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -13,7 +13,10 @@ test-base-%: ../libi2pd/Base.cpp test-base-%.cpp
 | 
			
		|||
test-gost: ../libi2pd/Gost.cpp ../libi2pd/I2PEndian.cpp test-gost.cpp
 | 
			
		||||
	$(CXX) $(CXXFLAGS) $(NEEDED_CXXFLAGS) $(INCFLAGS) -o $@ $^ -lcrypto
 | 
			
		||||
 | 
			
		||||
test-gost-sig: ../libi2pd/Gost.cpp ../libi2pd/I2PEndian.cpp ../libi2pd/Signature.cpp ../libi2pd/Crypto.cpp ../libi2pd/Log.cpp test-gost-sig.cpp
 | 
			
		||||
test-gost-sig: ../libi2pd/Gost.cpp ../libi2pd/I2PEndian.cpp ../libi2pd/Crypto.cpp ../libi2pd/CPU.cpp ../libi2pd/Log.cpp test-gost-sig.cpp
 | 
			
		||||
	$(CXX) $(CXXFLAGS) $(NEEDED_CXXFLAGS) $(INCFLAGS) -o $@ $^ -lcrypto -lssl -lboost_system
 | 
			
		||||
 | 
			
		||||
test-x25519: ../libi2pd/Ed25519.cpp ../libi2pd/I2PEndian.cpp ../libi2pd/Log.cpp ../libi2pd/Crypto.cpp ../libi2pd/CPU.cpp test-x25519.cpp
 | 
			
		||||
	$(CXX) $(CXXFLAGS) $(NEEDED_CXXFLAGS) $(INCFLAGS) -o $@ $^ -lcrypto -lssl -lboost_system
 | 
			
		||||
 | 
			
		||||
run: $(TESTS)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										36
									
								
								tests/test-x25519.cpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								tests/test-x25519.cpp
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,36 @@
 | 
			
		|||
#include <cassert>
 | 
			
		||||
#include <inttypes.h>
 | 
			
		||||
#include <string.h>
 | 
			
		||||
 | 
			
		||||
#include "Ed25519.h"
 | 
			
		||||
 | 
			
		||||
const uint8_t k[32] = 
 | 
			
		||||
{
 | 
			
		||||
    0xa5, 0x46, 0xe3, 0x6b, 0xf0, 0x52, 0x7c, 0x9d, 0x3b, 0x16, 0x15,
 | 
			
		||||
    0x4b, 0x82, 0x46, 0x5e, 0xdd, 0x62, 0x14, 0x4c, 0x0a, 0xc1, 0xfc,
 | 
			
		||||
    0x5a, 0x18, 0x50, 0x6a, 0x22, 0x44, 0xba, 0x44, 0x9a, 0xc4
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
const uint8_t u[32] = 
 | 
			
		||||
{
 | 
			
		||||
    0xe6, 0xdb, 0x68, 0x67, 0x58, 0x30, 0x30, 0xdb, 0x35, 0x94, 0xc1,
 | 
			
		||||
    0xa4, 0x24, 0xb1, 0x5f, 0x7c, 0x72, 0x66, 0x24, 0xec, 0x26, 0xb3,
 | 
			
		||||
    0x35, 0x3b, 0x10, 0xa9, 0x03, 0xa6, 0xd0, 0xab, 0x1c, 0x4c
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
uint8_t p[32] = 
 | 
			
		||||
{
 | 
			
		||||
    0xc3, 0xda, 0x55, 0x37, 0x9d, 0xe9, 0xc6, 0x90, 0x8e, 0x94, 0xea,
 | 
			
		||||
    0x4d, 0xf2, 0x8d, 0x08, 0x4f, 0x32, 0xec, 0xcf, 0x03, 0x49, 0x1c,
 | 
			
		||||
    0x71, 0xf7, 0x54, 0xb4, 0x07, 0x55, 0x77, 0xa2, 0x85, 0x52
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
int main ()
 | 
			
		||||
{
 | 
			
		||||
    uint8_t buf[32];
 | 
			
		||||
    BN_CTX * ctx = BN_CTX_new ();
 | 
			
		||||
    i2p::crypto::GetEd25519 ()->ScalarMul (u, k, buf, ctx);
 | 
			
		||||
    BN_CTX_free (ctx);
 | 
			
		||||
    assert(memcmp (buf, p, 32) == 0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue