006. BigInteger 코딩 - Type Casting 006. BigInteger 코딩 - Type Casting 암호화프로그래밍/C#-BigInteger 2013.10.18
004. BigInteger 코딩 - DLL호출 메서드 4. BigInteger 코딩 - DLL호출 메서드 BigInteger의 메서드들을 순수한 C#으로 코딩할 수도 있으나, 여기서는 앞 장에서 C로 작성한 큰 수를 처리하는 함수들을 사용하여 작성토록 하겠다. BigInteger프로젝트를 만들면서 이미 BigInt를 하위프로젝트로 삽입했고, BigInt솔루션이 DLL을 생성하도록 해놨다.. 암호화프로그래밍/C#-BigInteger 2013.10.18
002. BigInteger 클래스 설계 2. BigInteger클래스 설계 Java에는 기본으로 제공하는 API에 BigInteger 클래스가 있다. 이 BigInteger를 이용하면 큰 수에 대한 연산을 할 수 있어, 암호학 프로그래밍에 유용하게 사용된다. 이번 장에서 작성하는 C#용 BigInteger클래스는, Java의 BigInteger의 생성자, 메서드들과 유사하게 작성해보고자 .. 암호화프로그래밍/C#-BigInteger 2013.10.18
001. BigInteger 라이브러리 작성을 위한 프로젝트 생성 1. BigInteger 라이브러리 작성을 위한 프로젝트 생성 Java에는 BigInteger클래스가 기본 API로 제공된다. 그렇지만 C#에는 없어서 큰 수를 다루는 프로그래밍을 할 때는 자체 제작을 해야 한다. 이번 장에서는 앞에서 C로 제작한 '큰 정수'관련 함수들을 이용해서 C#용 BigInteger라이브러리를 만들어 .. 암호화프로그래밍/C#-BigInteger 2013.10.17
022. 활용 지금까지 C로 BIGINT관련 함수들을 작성해 봤고, 큰 정수와 관련된 연산들은 대부분 다룬 것 같다. 이것들은 다음과 같이 활용될 수 있을 것이다. PC가 아닌 Embedded System에서 C로 큰 정수의 연산을 해야하는 곳 PC에서 Java의 BigInteger클래스를 사용하고 있는데, 좀 더 빠른 속도를 내기 위해서 .. 암호화프로그래밍/(Old)C-BIGINT 2013.10.17
021. 소수(Prime Number) 2.15. 소수(Prime Number) 소수는 1과 그 자신만을 약수로 가지는 1보다 큰 자연수이다. 예를 들어, 1,3,5,7,11,17,19... 이런 수들이다. 소수는 암호학에서 비대칭키 알고리즘으로 현재까지 가장 많이 사용되고 있는 RSA암호의 근간이 되는 수이다. 자연수가 무수히 많듯이 소수도 무한히 많다. 수학.. 암호화프로그래밍/(Old)C-BIGINT 2013.09.12
020. 난수(Random Number) 2.14. 난수 (Random Number) 이번 장에서는 의사난수(擬似亂數, pseudo random number)라고 불리는 무작위 수, 즉 난수의 생성에 대해 다룬다. 난수는 무작위 수이다. 규칙성이 없어야 하고, 확률적인 분포에 치우침이 없는 수이다. 그러나, 의사난수는 규칙성이 있다. 확률적인 분포만이 치우침이 없.. 암호화프로그래밍/(Old)C-BIGINT 2013.09.11
019. 기수변환 2.13 기수변환 이번 장에서는 BIGINT 수를 여러가지 기수로(진법) 변환하는 알고리즘에 대해서 다룬다. 우리의 일상생활에서는 10진수가 주로 쓰이고 있으나, 컴퓨터는 2진수 체계를 기반으로 움직인다. 2진수는 두 개의 숫자 0과 1로 표현될 수 있으며, 10진수는 0에서부터 9까지의 수로 표현.. 암호화프로그래밍/(Old)C-BIGINT 2013.09.03