본문 바로가기

728x90

분류 전체보기

(144)
주민등록번호 구조, 유효성 검사 코드 한국에서는 주민등록번호 미국은 Social Security Number 일본은 Resident Registration Number 중국은 신용 식별 번호(Credit Identification Number) 인도는 Aadhar 번호가 있다. 각 나라마다 개인 코드의 종류나 용도는 다르지만 개인을 식별하는 주된 용도의 개념은 같다. 주민등록번호는 앞의 6자리가 생년월일이다. 예를 들어 831027은 83년 10월 27일 생을 의미한다. 출생년도는 원래 4자리인데 두자리만 표현하다보니 1900년생도 00, 2000년생도 00이 되는 문제가 있어서 주민등록번호 뒷 자리의 7자리중에서 첫번째 자리를 확대해서 성별코드로 사용한다. 주민등록번호 뒷 자리의 첫번째 숫자가 5,6,7,8은 외국인을 의미한다. 뒷자리 7..
유심카드(Sim card)에 저장된 암호들 심카드(Sim card)란? 우리가 유심칩이라고 하는 SIM카드의 SIM 뜻은 Subscriber Identification Module, 가입자 식별 모듈이다. 유심카드에는 ICCID 코드값과 IMSI 코드값이 내장된 IC가 들어있다. IC에는 최대 256KB 데이터가 저장되는 마이크로컴퓨터와 메모리가 들어있다. ICCID는 Integrated Circuit Card Identifier로, 일반적으로 각 SIM 카드 뒷면에 인쇄된 18~22자리 코드값으로 복제 불가능한 고유 ID값이다. 한국에서 구입한 경우에는 89로 시작하며 19자리를 가진다. '심카드'라는 앱을 다운받아 실행하면 ICCID값이 나온다. 앞의 두 자리는 89로 시작한다(발행자 인증이라고도 하는 고정값으로 ISO/IEC 7812에 따라..
포인트-키 암호, 알파벳과 숫자의 절묘한 조합 포인트 암호화는 간단한 형태의 대치 암호다. 원리는 알파벳 문자를 숫자로 변환하고 그 숫자를 특정 좌표에 매핑해서 암호화하는 원리다. 1단계) 알파벳을 숫자로 대응시키는 키를 정한다. 먼저, 알파벳 문자를 숫자로 대응시키는 키를 정한다. 가장 간단한 경우는 A=1, B=2, ..., Z=26과 같이 알파벳 문자를 숫자로 직접 매핑하는 것이다. 이것은 알파벳 문자를 숫자로 변환하는 기본 키가 된다. A=5, B=2,...Z=4 와 같은 형태로 키를 잡는 것이 더 암호답다. 2단계) 키로 사용할 점의 좌표를 선택한다. 다음으로, 암호화에 사용할 키로서 (x, y) 형태의 좌표를 선택한다. 이 좌표는 알파벳 문자를 숫자로 변환하는 데 사용된다. 예를 들자면, (3, 1) 또는 (26,5)와 같은 좌표를 선택할..
데이터 분석으로 알아보는 2023년 로또 번호 빈도 분석 ※ 파일은 포함되어 있지 않습니다. 많은 분들이 로또번호 분석에 대한 흥미로 디지털 암호학, 암호해독에 관심을 가져주심에 감사드린다. 거듭 말하지만 로또번호는 암호가 아니다. 진화된 과학 기술로 숫자를 분석해서 흥미롭게 암호학과 수학에 접근하고자 예를 들어 설명하는 용도로 사용하는 example임을 분명히 말씀드린다. 여러분들이 묻는다. 그렇게해서 당첨된적이 있거나 어떤 경향이 있는지를. 결론부터 말하면 '60% 이상 긍정적이다'고 말할 수 있다. 왜냐면 적어도 금액이 크던 작던간에 매주 당첨은 되고 있다. 필자는 이와 어떤 형태의 비즈니스도 하고 있지 않으며 관련되어 있지도 않다. 다만, 개인적으로 문의를 하는 분들의 질문에 대답 정도는 해드릴 수 있다. 이번에 다룰 데이터는 과연 2023년에는 어떤 ..
로그인 암호, 영문과 숫자, 특수 문자를 조합한 8자 이상 로그인 암호는 온라인의 보안을 유지하기 위해 필요하다. 계정 보호, 개인 정보 보호, 불법 접근 방지, 식별과 인증 로그인 암호는 사용자의 계정을 외부 침입자로부터 보호하고 바른 암호 없이는 다른 사람이 사용자의 계정에 접근하는 것을 방지한다. 이를 통해 사용자의 개인 정보와 데이터를 안전하게 보호하며 개인 정보 유출이나 해킹을 막을 수 있다. 타인의 불법적 접근을 방지하고, 온라인 서비스 또는 웹사이트의 시스템이 무단으로 사용되지 않도록 한다. 뿐만 아니라 사용자를 식별하고 인증해서 정당한 사용자만이 특정 서비스나 애플리케이션에 접근하게 할 수 있다. 아래 코드는 C#으로 작성되었이며 몇 가지 조건을 제한한 암호 생성 코드다. 조건1) 암호 10개를 생성한다. 조건2) 적어도 영문대문자 1개가 포함된다..
아핀(affine) 암호, QAPASAA가 가르키는 나라는? 아핀 암호는 시저 암호와 비제네르 암호보다 더 복잡한 암호화 방법으로, 두 개의 정수 값과 모듈러 연산을 사용하여 암호화한다. 아핀 암호의 수학식은 아래와 같다. C = (a * P + b) % 26 C: 암호문의 문자 a: 정수 값(공개적으로 알려진 값) P: 평문 문자 b: 정수 값(또 다른 키 값) 26: 알파벳 길이 (알파벳 개수 = 문자집합의 크기) 여기서 a와 b는 암호화를 조절하는 두 개의 키 값이다. a는 모듈러 역원을 가지는 값이고, 이는 수학적으로 '서로소 관계'인 경우에 해당된다. 아핀 암호는 암호학에서 사용되는 대표적인 대치 암호 중 하나입니다. 이 암호는 두 개의 정수, 일반적으로 a와 b라고 표시되는 두 개의 매개변수를 사용하여 평문 문자를 암호화하는 데 사용됩니다. 아핀 암호의..
[파일] 태영호 영사 사진에 숨겨진 '주소추적보고' 아래 사진은 런던 AFP 연합 뉴스에서 촬영한 태영호 전영사의 사진으로 224 × 264 픽셀을 가지고 있다. 만약, 북에서 '주소추적보고'라는 메시지를 이미지에 심는다는 가정하에 코드를 만들어보도록 한다. 1) Button1에서 암호가 심어진 사진을 불러온다. 2) Button2(변환)을 누르면 이미지의 가장 우측 열의 값(264개이므로, 0~263개)들이 가지고 있는 픽셀값들이 16진수로 출력된다. 아래는 전체 출력값들 (0~263)들중 0~12까지의 출력값이다. Pixel at (223, 0): #0A1F92 Pixel at (223, 1): #081F8F Pixel at (223, 2): #0C1D91 Pixel at (223, 3): #042292 Pixel at (223, 4): #081C97..
[파일]ROT13, 10대의 암호 ROT13(로테이션 13)은 텍스트 암호화/복호화를 이해하기 위한 간단 암호 기술이다. ROT13은 알파벳을 13자만큼 회전시켜서 텍스트를 변환한다. 예를 들어, "A"를 "N"으로, "B"를 "O"로, "C"를 "P"로 변환한다. 이 기술은 주로 중고장터와 같은 온라인 포럼에서 필요없는 관심을 피하기 위해 사용되기도하고 간단한 메시지를 감추기 위한 용도로 사용된다. ROT13은 단순한 문자 치환 방식이며, 원본 메시지를 손상시키지 않고 쉽게 원래의 메시지로 복원할 수 있다. 예를 들어, "HELLO"를 ROT13으로 암호화하면 "URYYB"가 된다. 반대로 "URYYB"를 ROT13으로 복호화하면 다시 "HELLO"가 된다. 아래 샘플 코드는 C#으로 작성되었다. using System; class P..

728x90