Develop
2016.10.03 13:16
[c] RSA 암호화 구현(gmp 라이브러리 활용)
조회 수 1000 댓글 0
첨부 '2' |
---|
수업 시간에 하는 내용 올려놓고 공유하는 곳.
# RSA
public key : n, e (n=2048bit)
private key : p, q, d (p=1024bit prime)
# 소수판정
MR-prime test
(100% 아니고 에러 확률 1/4)
test 횟수?
-> 에러 확률 어느 정도로 맞출 것이냐?
-> 보안 강도를 어느정도로 맞출 것이냐?
-> ex) 에러 확률 1/122는 56번 돌린다.
(1/4)^56 = 1/(2)^112
1024bit random number -> MR-prime test 56회 -> true -> P
1024bit random number -> masking(홀수만나오게) -> MR-prime test 56회 -> true -> P
0번째 bit값이 0이면 짝수^^
mpz_t p, q;
p->_mp_d[0] = p->_mp_d[0] | 1;
# 중국인의 나머지 정리 (CRT)
d = 2048 bit
c = 2048 bit
p = 1024 bit
x = c^d mod p => x = (c mod p)^(d mod p-1) mod p
y = c^d mod q => y = (c mod q)^(d mod q-1) mod q
z = c^d mod n => z = ( x(q^-1 mod p) ) q + ( y(p^-1 mod q) )p
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
993 | Develop | [c] fgets() 함수 사용하기.. | hooni | 2003.04.23 | 7853 |
992 | Develop | [c] 간단한 순위 루틴.. (정보처리기사) | hooni | 2003.04.23 | 6894 |
991 | Develop | [c] 간단한 순위 루틴.. (질문에 대한 답변) | hooni | 2003.04.23 | 7491 |
990 | Develop |
[c++] 링크리스트(linked list) 클래스(스택,큐)
![]() |
hooni | 2003.04.23 | 9577 |
989 | Develop | [c] 문자열 처리(문자열 자르기) | hooni | 2003.04.23 | 8662 |
988 | Develop | [c] 문자열 정렬 함수 qsort() | hooni | 2003.04.23 | 8261 |
987 | Develop | [c] OpenGL 임시로 여기 올림.. | hooni | 2003.04.23 | 10338 |
986 | Develop |
[c] 정수를 2진수로 변환 (재귀,비트연산)
![]() |
hooni | 2003.04.23 | 7601 |
985 | Develop | [c] OpenGL 관측점 이동 | hooni | 2003.04.23 | 7634 |
984 | Develop |
[c] 팩토리얼 서버/클라이언트..
![]() |
hooni | 2003.04.23 | 17314 |
983 | Develop |
[c] 패킷정보출력(경로, 패킷길이, 3hand, sync, ack..)
![]() |
hooni | 2003.04.23 | 7276 |
982 | Develop | [c] 라인수 입력받아 마름모꼴 출력하기.. | hooni | 2003.04.23 | 6897 |