2007/11/03 - [Technology] 32-bit JB ME ARM-ASM Language 구현.. 의 연장선에 있는
2048-bit Modular Exponentiation 이 가능한 ARM ASM과 C 믹스 프로그램을 짜는 중입니다.
덜덜덜덜....
맨처음 ARM-ASM으로 2048-bit JB ME를 짰는데 남들 10분 이내로 끝나는거 30분이 걸리는 기염을 토했고...
지금은 겨우겨우 13분대로 진입성공...
하지만... 남들은 6분대라고!!! 덜덜덜덜...
C로 2048-bit 짜서 저장해둔 검증 데이터
ASM과 C를 믹싱한 데이터...
식으로 쓰면 쉽습니다. ( A ^ X ) % N 입니다.
암호화 등에 쓰이게 되는 방법이고 IEEE에 등록되어 있습니다. JB Alghorithm;;;
문제는 이게 unsigned int 2048bit이라는데 있죠 ;;;; 덜덜덜덜
Input A :
11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890 34567890
Input X :
11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00 abcdef00
mod N :
ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 ff000000 11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 11223344 55667788 9900aabb ccddeeff 11223344 55667788 9900aabb ccddeeff 11223344 55667788 11111111 33333333 55555555 77777777