ryuozero Site Admin
�������: 13 Jul 2005 �ͺ: 1145
|
�ͺ�����: Sun Dec 09, 2007 1:45 am ����ͧ: |
|
|
��ҧ�ԧ�ҡ: |
ThaiCERT: Thai Computer Emergency Response Team �ٹ�����ҹ�ҹ����ѡ�Ҥ�����ʹ��¤��������� �������
--------------------------------------------------------------------------------
����������ͧ�鹢ͧ���������ʢ����� (Introduction to Cryptography)
���º���§�� : ��. ��è� ���ѧ��
���º���§����� : 6 �ԧ�Ҥ� 2547
����ǹ�
����������ըش���ʧ����������������鹰ҹ����ǡѺ��û�ͧ�ѹ���ʹ���¡��������ʢ����� �����駤�ͺ�����֧��š��Է�������㹡��������ʷ���ӤÑ� ����դ�����������٧�������ҹ�ѡ������ҹ��㹷���ҧ� �� ����������� ˹ѧ��� ������觵վ��������
ï¿½Ø´ï¿½ï¿½ï¿½Ê§ï¿½ï¿½ï¿½ï¿½ï¿½Ó¤Ñ 3 ��С�âͧ���������ʢ����Ż�Сͺ����
��÷����������繤����Ѻ (Confidentiality) ���ͻ�ͧ�ѹ����������������Է���㹡����Ҷ֧����������ö��Ҷ֧��������
��÷�������������ö��Ǩ�ͺ��������ó��� (Integrity) ���ͻ�ͧ�ѹ����������������Ҿ������ҧ����ó� ����Ǥ�� 㹡�кǹ���������ù�鹼���Ѻ (Receiver) ���Ѻ�����ŷ��١��ͧ���������� (Sender) ��������¢����Ũе�ͧ����ա���Ù������Ͷ١����¹�ŧ�����
��÷��������ö���٨���ǵ��ͧ����觢������� (Authentication/Nonrepudiation) �����������ö��Ǩ�ͺ������ä�ͼ���觢����� ����㹷ҧ�ç�ѹ���� �������ͻ�ͧ�ѹ����ͺ��ҧ��
���������ʢ����� (Cryptography)
���������ʢ������¾�鹰ҹ���Ǩ�����Ǣ�ͧ�Ѻ�Ըա�÷ҧ��Ե��ʵ��������㹡�û�ͧ�ѹ���������͢�ͤ�����駵鹷���ͧ�����件֧����Ѻ �����ŵ�駵鹨ж١������¹������������͢�ͤ����ա�ٻẺ˹�觷���������ö��ҹ���������á����������աØ�����Ѻ�Դ�٢����Ź�� ������¡��кǹ���㹡�����ٻ�ͧ�����ŵ�駵���� "���������ʢ�����" (Encryption) ��С�кǹ���㹡���ŧ��ͤ�������������ö��ҹ ��зӤ�����������Ѻ�����ͤ��������� ��ҡ�öʹ���ʢ����� (Decryption)
��š��Է��㹡��������ʢ�����
��š��Է��㹡��������ʢ������� 2 ��������ѡ ���
��š��Է��Ẻ���ҵ� (Symmetric key algorithms)
��š��Է��Ẻ������Øᨷ�����¡��� �Ø��Ѻ (Secret key) �������§˹������������㹡�������жʹ���ʢ�ͤ��������� ��š��Է���ѧ����ö�������͡�� 2 ������ ���� Ẻ���ͤ (Block Algorithms) ��觨зӡ��������ʷ��к��ͤ (1 ���ͤ��Сͺ��������亵� �� 64 亵� �繵�) ���Ẻʵ��� (Stream Algorithms) ��觨зӡ��������ʷ���亵���š��Է��Ẻ������Øᨷ�����¡��� �Ø��Ѻ (Secret key) �������§˹������������㹡�������жʹ���ʢ�ͤ��������� ��š��Է���ѧ����ö�������͡�� 2 ������ ���� Ẻ���ͤ (Block Algorithms) ��觨зӡ��������ʷ��к��ͤ (1 ���ͤ��Сͺ��������亵� �� 64 亵� �繵�) ���Ẻʵ��� (Stream Algorithms) ��觨зӡ��������ʷ���亵�
��š��Է��Ẻ����ҵ� (Asymmetric key algorithms)
��š��Է��������Ø��ͧ������ͷӧҹ ���˹����㹡�������������ա���˹����㹡�öʹ���ʢ����ŷ������������¡Øᨵ���á ��š��Է��������ӤÑ�Ẻ����ҵù���� ��š��Է��Ẻ�Ø��Ҹ�ó� (Public keys Algorithms) �����Øᨷ�����¡�ѹ��� �Ø��Ҹ�ó� (Public keys) 㹡��������������Øᨷ�����¡�ѹ��� �Ø���ǹ��� (Private keys) 㹡�öʹ���ʢ����Ź�� �Ø��Ҹ�óй������ö���ͺ���Ѻ�������� �� ���͹�����ҹ�����ҵ�ͧ��õԴ��ʹ��� ��������з���ҧ��麹���䫵�����������������ö��ǹ���Ŵ���ҹ�� ����Ѻ�Ø���ǹ��ǹ�鹵�ͧ�����Ѻ�������Ңͧ�Ø���ǹ�����ҹ����������Դ���������蹷�Һ���索Ҵ
��š��Է��Ẻ�Ø��Ҹ�ó��ѧ����ö����ء������Ѻ���ŧ�����ͪ�������硷�͹ԡ�� (������º����͹���ŧ�����ͪ��ͧ͢��ҷ����Ѻ�͡����ӹѡ�ҹ�����) ���ŧ�����ͪ��͹����繡�þ��٨���������Ңͧ�������ö����Ѻ��÷Ӹ�á�����ҧ� ���Թ������ �� ��ë����Թ��� �繵� �Ըա����ҹ��� �������Ңͧ�Ø���ǹ���ŧ�����ͪ��ͧ͢���Ѻ��ͤ�������ͧ�����仴��¡Ø���ǹ��� ���Ǩ֧�觢�ͤ����������Ѻ����Ѻ ��������Ѻ��ͤ������ŧ�����ͪ����� ����Ѻ����ö��Ø��Ҹ�ó� (����繤��ͧ�Ø���ǹ��ǹ��) ���͵�Ǩ�ͺ����繢�ͤ�������Ҩҡ����觹���������
�Ñ�Ңͧ��š��Է��Ẻ���ҵ�
��š��Է��Ẻ���ҵ��դ����ӤÑ������仡�����š��Է��Ẻ����ҵ� ��駹�����ͧ�ҡ��š��Է��Ẻ�á�ӧҹ���Ǵ���ǡ�����Ч��µ�͡����ҹ����Ẻ��ѧ ���ҧ�á�����š��Է��Ẻ���ҵ��ѧ�ջÑï¿½Ò·ï¿½ï¿½ï¿½Ó¤Ñ 3 ���� ����繢�ͨӡѴ㹡����ҹ��š��Է�����
㹡����ҹ��š��Է����� �ͧ���������ͧ����š����¹�����šѹ (�� ͧ��� � ��� �) ���繵�ͧ�š����¹�Ø��Ѻ�ѹ��͹ (����Ҩ���¶֧���ͺ�Ø��Ѻ���Ѻ�ա�����˹��) ����š����¹�Øᨹ���Ҩ�������ҧ����ҡ�������дǡ
����ͧ�������ͧ�ѡ�ҡØ��Ѻ�����������ҧ�� �����Դ������������ǧ������索Ҵ ��÷��Øᨶ١�Դ���͡��������� (���¡����㴡����˹�觡���) ����ա�����˹��������Ѻ��Һ�Ñ�ҹ�� �Ҩ�������Դ�Ñ�ҡѺ������������Һ����� �� ���������Ҩ�觢�ͤ�������繤����Ѻ����Ѻ�ա�����˹�� ���ͤ�������Ҩ�١�Դ��������Ø��Ѻ�����ǧ����¼�����
����Ѻ�ͧ���������ͧ��õԴ��͡ѹ ���繵�ͧ��Ø��Ѻ�繨ӹǹ 1 �Ø����͵Դ��͡ѹ ���������ռ�����ͧ�Դ��͡ѹ�繨ӹǹ n ����� �ӹǹ�Ø��Ѻ����������ͧ�š����¹�ѹ�Դ�繨ӹǹ������ C 2n ������ҡѺ n (n-1)/2 �Ø� ��觨��������Ҩӹǹ�Ø����ҡ����Թ� ����Ҩ�������Դ�Ñ�Ҵ�ҹ����ѡ�Ҥ�����ʹ������Ѻ�Ø�����ҹ��
��š��Է��Ẻ�Ø��Ҹ�ó� (�����Ẻ����ҵ�) ������Ñ������ҹ��������� ��������͡Ø���ǹ�����е�ͧ������ؤ����蹷�赹�Դ��ʹ������͡������͢�ͤ����������������ҵ� ����ö�����Ø��Ҹ�óТͧ����麹���䫵�����㹷���Ҹ�óЫ�觼���������ö����Ҵ�ǹ���Ŵ���ҹ�� �Ըա����ҹ������ؤ����蹷���Ҵ�ǹ���Ŵ�Ø�仹�鹷ӡ��������ʢ�ͤ�������ͧ����觴��¡Ø��Ҹ�ó� ���Ǩ֧�觢�ͤ�����������������Ѻ�������Ңͧ�Ø��Ҹ�ó� ���Ըչ�������ռ���������ö�Դ�٢�ͤ������������ʹ����¡��鹼�����͡Ø���ǹ��� (����繤��ͧ�Ø��Ҹ�óй��) �֧������ö�Դ��ͤ���������
��������Ø��Ҹ�ó��ʶҹ����ҧ� ������Ŵ��������ҡ㹡���š����¹�Øᨡѹ����繻Ñ�Ң���á�ͧ����������Ẻ���ҵ� ����Ѻ�Ñ�ҷ����ҷ���ͧ������е�ͧ�ѡ�ҡØ��Ѻ��������ҧ�չ�� �Ըա�âͧ�Ø��Ҹ�óШз���������ͧ�Ѻ�Դ�ͺ�������§������� ����Ǥ�� ����͡Ø���ǹ��� �����������������ǧ������索Ҵ
����Ѻ�Ñ�ҷ����������Ҩӹǹ�Ø��Ѻ�����繵�ͧ�����ҡ����Թ� �Ըա�âͧ�Ø��ҸҳШ���ӹǹ�Øᨷ������Ѵ���� ���ͧ�ҡ�Ø��Ҹ�ó� 1 �Øᨢͧ������ ˹�觨�����ö��������Ѻ���������������ҵ�ͧ��õԴ��ʹ��� (᷹������ 1 �Ø��Ѻ����ͧ���������ͧ��õԴ��͡ѹ) �ѧ��鹶���ա��������ͧ�Դ��͡ѹ�ӹǹ n ����� �ӹǹ�Ø���ǹ��Ƿ���ͧ���ѧ�ѡ�ҡ��� n �Ø� ��觨���������Ŵŧ����繨ӹǹ�ҡ
������·���ӤÑ�ͧ�к��Ø��Ҹ�óз���ӤÑ��� ��ͧ������㹡�äӹdz��������жʹ���� �������º�Ѻ�к��Ø����ҵ� ����Ҩ�������繾ѹ��Ңͧ���ҷ�������к��Ø����ҵ�
��������觢ͧ��š��Է������Ѻ����������
��������觢ͧ��š��Է�����¶֧�����ҡ㹡�÷����ء�ء������ö�ʹ���ʢ��������»��Ȩҡ�Øᨷ����㹡��������� ��觨Т������Ѻ�Ѩ��´ѧ���
����纡Ø��������������ҧ�繤����Ѻ �������Ңͧ�Ø��Ѻ������ǹ��ǵ�ͧ���Ѵ���ѧ������Ø��Ù���������ǧ����¼�����
������Ǣͧ�Ø�������� ���ԡØ�������ʨ��դ�������繺Ե ��觨ӹǹ�Ե�ͧ�Ø�����ҡ ��觷�����������������ҡØᨷ��١��ͧ������ҡ��觢�� (�� �Øᨢ�Ҵ 1 �Ե ������ö᷹����Ţ�� 2 ��Ҥ�� 0 �Ѻ 1 �Øᨢ�Ҵ 2 �Ե ������� 4 ��Ҥ�� 0, 1, 2, 3 �繵�)
��������ç���ǵ�͡���֡�����ʹ���š��Է���������ٻẺ�ͧ���������� ��š��Է�����յ�ͧ�Դ��������ӡ���֡�����������´��������ç��Ҽ���֡�Ҩ�����ö�Ѻ�ٻẺ�ͧ������������
����ջ�е��Ѻ���š��Է�� ��š��Է�����յ�ͧ���ὧ�����»�е��Ѻ�������ö���繷ҧ���������š��Է�� �����Ҩ�����ͷӡ�öʹ���ʢ������� ��е��Ѻ������������繵�ͧ��Ø�㹡�öʹ����
��������ç���ǵ�ͻÑ�ҡ���Ҥ�������ѹ��㹢����ŷ�����Ѻ ����Ǥ������ͼ��ء�ء��Һ�����źҧ���ҧ����繢����ŵ�駵鹫���ѧ������������ �������բ����ŷ������������� (�ͧ�����ŵ�駵鹹��) ���ء�ء�Ҩ������ö�Ҥ�������ѹ�������ҧ��ͤ�������ͧ����� ��觨����Ըա��㹡�öʹ���ʢ������� �Ñ�ҹ�����¡�ѹ��� Known plaintext attack (����� plaintext ���¶֧��ͤ�����駵鹷���ѧ������ҹ����������)
�س���ѵԢͧ��ͤ�����駵� �س���ѵԹ���Ҩ���繪�ͧ�ҧ㹡�öʹ���ʢ������� ��š��Է�����յ�ͧ�����س���ѵԢͧ��ͤ����繡��㹡��������ʢ�����
���й�㹡�����͡����š��Է������������š��Է��������ա����ҹ�����������ҹҹ���� ��駹�����ͧ�ҡ�ҡ�Ñ�Ңͧ��š��Է������ը�ԧ �礧�Դ����ҹҹ������С礧�繷���Һ�ѹ���� ��蹤�����ҧ���·���ش�Ǻ����з�觶֧�Ѩ�غѹ ���ѧ����ա�úء�ء���������š��Է������������ö��ҹ�����ҧ��ʹ����繷���Шѡ�� �ѧ��鹨֧���������š��Է������� ���������ա�ù��ʹ͡ѹ����Ҹ�ó� �����Ҩ�ժ�ͧ����ὧ��������ѧ����繷���Һ㹢�й��
������Ǣͧ�Øᨷ����㹡���������
������Ǣͧ�Ø����������˹��¹Ѻ�繺Ե ˹�觺Ե㹤����������繵���Ţ�ҹ�ͧ����Сͺ���¤�� 0 ��� 1 �Øᨷ���դ������ 1 �Ե ����Ţ������������᷹�Øᨹ�� �֧�Ҩ�դ���� 0 ���� 1 �Øᨷ���դ������ 2 �Ե ����Ţ��������֧�� 0, 1, 2 ��� 3 ����ӴѺ �Øᨷ���դ������ 3 �Ե ����Ţ������������������ҧ 0 �֧ 7 �ѧ������������������Ǣͧ�Øᨷء� 1 �Ե ��ҷ�������ͧ�Øᨨ�����������ͧ��ҵ�� ���ͨӹǹ�Øᨷ����������������� 2 ��ҵ�ǹ���ͧ
�й�鹨��������ҡØ�����դ�������ҡ �͡�ʷ����ء�ء������ö�Ҵ�ҡØᨷ��ç�Ѻ�����Ţ���١��ͧ�ͧ�Øᨨ�����ҡ�ҡ��鹵���ӴѺ 㹡�÷����ء�ء�ͧ�Դ�ͧ�١�Ѻ�Ø�����Øᨷ���������Ţ��ҧ� �ѹ ������ѧ���о��Øᨷ��١��ͧ�������ö��ʹ���ʢ������� ����ͧ�Դ�ͧ�١���������¡�ѹ��� Key search ���͡�ä��ҡØᨹ���ͧ ��ɮ������������ҡ���ͧ�Դ�ͧ�١���������¨е�ͧ���ͧ�Ѻ�Ø��繨ӹǹ����˹�觢ͧ�Øᨷ�������͹���о��Øᨷ��١��ͧ
������Ǣͧ�Øᨷ���բ�Ҵ��������֧�������Ѻ��������㹡�ä��ҡØᨢͧ���ء�ء����������ҷ���ͧ������������դ�����ʹ��� ������ҧ�� ��Ҽ��ء�ء����ö�ͧ�Դ�ͧ�١�Ѻ�Ø��繨ӹǹ 10 �Ø�����˹���Թҷ����� �Øᨷ���դ������ 40 �Ե ������ö��ͧ�ѹ����������� 3,484 �� ��Ҽ��ء�ء����ö�ͧ���繨ӹǹ 1 ��ҹ�Ø��˹���Թҷ� (෤����ջѨ�غѹ����ö����) �Øᨷ���դ������ 40 �Ե������ö��ͧ�ѹ�������������§ 13 �ѹ��ҹ�� (����Ҩ�����§������Ѻ㹺ҧ�ѡɳЧҹ) ����෤�����㹻Ѩ�غѹ�ҡ���ء�ء����ö���ͧ���繨ӹǹ 1,000 ��ҹ�Ø��˹���Թҷ� �Øᨢ�Ҵ 128 �Ե������ö��ͧ�ѹ����������� 1022 �� �ѧ��鹴����ѡɳЧҹ����仡Øᨢ�Ҵ 128 �Ե�о���§��͡���ѡ�Ҥ����Ѻ�ͧ��������������
��š��Է������Ѻ����������Ẻ���ҵ�
��š��Է������Ѻ����������Ẻ���ҵ�㹻Ѩ�غѹ���繨ӹǹ�ҡ ��ҧ��ҧ���й��ʹ���§�ӹǹ˹�觫������š��Է������繷�����ѡ�ѹ���ǧ��âͧ���������ʢ�����
��š��Է�� DES
DES ����Ҩҡ Data Encryption Standard ��š��Է��������Ѻ����Ѻ�ͧ���Ѱ������Ѱ����ԡ�㹻� �.�. 1977 ������ҵðҹ���������ʢ���������Ѻ˹��§ҹ�ͧ�Ѱ������ 㹻� 1981 ��š��Է���ѧ���Ѻ��á�˹�������ҵðҹ���������ʢ�������дѺ�ҹҪҵԵ���ҵðҹ ANSI (American National Standards) �ա����
DES ����š��Է��Ẻ���͡�����Øᨷ���բ�Ҵ������� 56 �Ե�������š��Է������դ�������� �����ͧ���¢�Ҵ������Ǣͧ�Øᨷ���բ�Ҵ��§ 56 �Ե ���㹻Ѩ�غѹ������������Թ� ���ء�ء�Ҩ���Ըա���ͧ�Դ�ͧ�١���ͤ��ҡØᨷ��١��ͧ����Ѻ��öʹ������
㹻� 1998 ���ա�����ҧ����ͧ�������������ɢ���ҫ������Ť�� 250,000 ����Â���Ѱ ������㹡�ä��ҡØᨷ��١��ͧ�ͧ���������ʢ�����˹��� ���� DES ��о��������ͧ����������������ö���ҡØᨷ��١��ͧ�����������������֧˹���ѹ
��š��Է�� Triple-DES
Triple-DES ����š��Է����������������ʹ��¢ͧ DES ����դ���������ҡ���������š��Է�� DES �繨ӹǹ����������ͷӡ��������� ���Ф��駨���Ø�㹡��������ʷ��ᵡ��ҧ�ѹ �ѧ��鹨֧���º����͹�����Ø�������ʷ���դ��������ҡѺ 56*3 = 168 �Ե Triple-DES ��١ ��ҹ�ѺʶҺѹ�ҧ����Թ���ҧ������� ��������ҹ�Ѻ����� Secure Shell (ssh) ����
�������š��Է�� DES ������������繨ӹǹ�ͧ���駴��¡Ø��ͧ��� (56*2=112 �Ե) �ѧ������������ʹ������ҧ����§
��š��Է�� Blowfish
Blowfish ����š��Է������դ����Ǵ����㹡�÷ӧҹ �բ�Ҵ��硡�зѴ�Ѵ ��������������Ẻ���ͤ ���Ѳ�Ҥ�� Bruce Schneier ��š��Է������ö��Øᨷ���բ�Ҵ������ǵ��������ҡ�ѡ仨��֧��Ҵ 448 �Ե ��觷�����Դ�����״�����٧㹡�����͡��Ø� ��������š��Է���ѧ���Ѻ����͡Ẻ�����ӧҹ���ҧ��������Ѻ˹��»����żŢ�Ҵ 32 ���� 64 �Ե Blowfish ���Դ������Ҹ�ó����������ա�è��Է�Ժѵ��� �͡�ҡ����ѧ�������� SSH �������
��š��Է�� IDEA
IDEA ����Ҩҡ International Data Encryption Algorithm ��š��Է��������Ѻ��þѲ��㹻�������������Ź�������ͧ Zarich �� James L. Massey ��� Xuejia Lai ������Ѻ��õվ���������㹻� �.�. 1990 ��š��Է����Øᨷ���բ�Ҵ 128 �Ե ������Ѻ�����ҹ�Ѻ������ʹ�Ե����Ѻ�������������ŧ�����ͪ�������硷�͹ԡ����к����������ժ������ PGP ����� IDEA ���Ѻ��è��Է�Ժѵ÷ҧ��ҹ�Ϳ�������º���ѷ Ascom-Tech AG 㹻�������������Ź�� ��觷�����ù����㹧ҹ��ҧ� �����Ŵŧ ��駹�����ͧ�ҡ�Դ�Ñ������ͧ�Ԣ�Է������ͧ
��š��Է�� RC4
��š��Է���������š��Է��Ẻʵ��� (�ӧҹ�Ѻ�����ŷ���亵�) ������Ѻ��þѲ�Ң������ Ronald Riverst ��ж١���繤����Ѻ�ҧ��ä���º���ѷ RSA Data Security ������ѧ��š��Է��������Ѻ����Դ��� Usenet ����ͻ� �.�. 1994 ����繷���Һ�ѹ�������š��Է������դ��������������ö�颹Ҵ������Ǣͧ�Øᨷ���բ�Ҵ����� 1 �Ե仨���з�觶֧��Ҵ 2048 �Ե
��š��Է�� Rijndael (������š��Է�� AES)
��š��Է��������Ѻ��þѲ���� Joan Daemen ��� Vincent Rijmen 㹻� 2000 ��š��Է�����Ѻ��äѴ���͡��˹��§ҹ National Institute of Standard and Technology (NIST) �ͧ���Ѱ����ԡ�������ҵðҹ㹡��������ʪ���٧�ͧ����� ��š��Է���դ��������٧����բ�Ҵ�зѴ�Ѵ������ö��Øᨷ���դ�����Ǣ�Ҵ 128, 192 ��� 256 �Ե
��š��Է�� One-time Pads
��š��Է��������Ѻ�������Ѻ�������š��Է����������������ö��Ф�������觢ͧ��š��Է���� ��š��Է����Øᨷ���բ�Ҵ������ǫ���Ҩ���ҡ���Ң�Ҵ������Ǣͧ��ͤ�������ͧ���������� �Øᨨж١���ҧ�͡��Ẻ��������»��Ԩж١��ҹ����§�����������Ƿ��� ����亵�ͧ��ͤ�������ͧ�����仨ж١�����жʹ������˹��亵� (��Դ亵���亵�) �ͧ�Øᨷ��١���ҧ�������ҹ ���ͧ�ҡ�Øᨷ��١��ҹ���Ф��駨�����ӡѹ��ж١���ҧ�����Ẻ���� �֧�繡���ҡ���Ф��ҡØᨷ��١��ͧ��
��ͨӡѴ�ͧ��š��Է����� ��͢�Ҵ�ͧ�Øᨷ���Ҩ�բ�Ҵ��ǡ��Ң�ͤ�������ͧ����� ����觼���������ͺ�Øᨷ���բ�Ҵ�Ë��������дǡ�ѡ �����駡�����ҧ�Ø�����դ��������٧���������觷�������¹ѡ ���ҧ�á�����š��Է�������ѧ�ա����ҹ��к����͢��·���ͧ��ä�����ʹ����٧
��š��Է������Ѻ����������Ẻ�Ø��Ҹ�ó� (���͡���������Ẻ����ҵ�)
��š��Է��Ẻ�Ø��Ҹ�ó� �觵���ѡɳС����ҹ���� 2 ������ ���
������Ѻ����������
������Ѻ���ŧ�����ͪ�������硷�͹ԡ��
��š��Է������繷�����ѡ�ѹ���մѧ���
��š��Է�� RSA
��š��Է�� RSA ���Ѻ��þѲ�Ң�鹷������Է����� MIT 㹻� 1977 ����ʵ�Ҩ���� 3 �� ��觻�Сͺ���� Ronald Rivest, Adi Shamir ��� Leonard Adleman ���ͧ͢��š��Է�����Ѻ��õ�駪��͵������ѡ�õ���á�ͧ���ʡ�Ţͧ��ʵ�Ҩ����������� ��š��Է���������ö��㹡��������ʢ����������駡��ŧ�����ͪ�������硷�͹ԡ�����
��š��Է�� DSS
DSS ����Ҩҡ Digital Signature Standard ��š��Է��������Ѻ��þѲ�Ң������ National Security Agency 㹻�������Ѱ����ԡ�������Ѻ����Ѻ�ͧ�� NIST ������ҵðҹ��ҧ����Ѻ���ŧ�����ͪ�������硷�͹ԡ��㹻�������Ѱ����ԡ�
��š��Է������Ѻ���ҧ�������ʵ�
�������ʵ� (Message Digest) �������¡���� �����ʵ� ����Ң�ͤ�����ػ�ҡ�����Ң�ͤ�����駵� �»��Ԣ�ͤ�����ػ���դ�����ǹ��¡��Ҥ�����Ǣͧ��ͤ�����駵��ҡ �ش���ʧ���ӤÑ�ͧ��š��Է������� ������ҧ��ͤ�����ػ�������ö���繵��᷹�ͧ��ͤ�����駵��� �·���仢�ͤ�����ػ���դ���������������ҧ 128 �֧ 256 �Ե ��Ш�����鹡Ѻ��Ҵ������Ǣͧ��ͤ�����駵�
�س���ѵԷ���ӤÑ�ͧ��š��Է������Ѻ���ҧ��ʵ��մѧ���
�ء� �Ե�ͧ��ʵ�Т������Ѻ�ء�Ե�ͧ��ͤ�����駵�
��ҺԵ㴺Ե˹�觢ͧ��ͤ�����駵��Դ�������¹�ŧ �� �١��� �ء� �Ե�ͧ��ʵ�����͡�������� 50 ����������¹���仴��� ������¶֧��� 0 ����¹����� 1 ��� 1 ����¹�� 0
�س���ѵԢ�͹������ö͸Ժ������ҡ������¹�ŧ��䢢�ͤ�����駵��¼�������ʧ����������Ҩ�����§��硹��¡��� �� ��§ 1 �Ե��ҹ�� ����觼�������Ѻ��ͤ�����Һ��Ң�ͤ�����赹���Ѻ������ͤ�����駵� (�¡�ùӢ�ͤ�����赹���Ѻ�����š��Է�����ͷӡ�äӹdz����ʵ��͡�� ���Ǩ֧���º��º��ʵ���ӹdz��Ѻ��ʵ������������� ��ҵ�ҧ�ѹ �ʴ���Ң�ͤ���������Ѻ��鹶١����¹�ŧ���)
�͡�ʷ���ͤ�����駵� 2 ��ͤ����� ����դ���ᵡ��ҧ�ѹ ������ö�ӹdz������ʵ����ǡѹ���͡�ʹ����ҡ
�س���ѵԢ�͹�������������� ����ͼ�������ʧ��շӡ����䢢�ͤ�����駵� ����Ѻ��ͤ������١�������ǹ�鹨�����ö��Ǩ����֧�����Դ���Է���Դ������ҧ��͹
���ҧ�á���㹷ҧ��ɮ����� ���͡�ʷ���ͤ��� 2 ��ͤ������ᵡ��ҧ�ѹ������ö�ӹdz����������ʵ����ǡѹ �Ñ�ҹ�����¡�ѹ��ҡ�ê��ѹ�ͧ��ʵ�(Collision) ��š��Է������Ѻ���ҧ��ʵ���դ�è����͡�ʹ����ҡ� ���С������Դ�Ñ�ҡ�ê��ѹ�ͧ��ʵ�
��š��Է������Ѻ���ҧ��ʵ��ʹ�����մѧ���
��š��Է�� MD2
���Ѳ�Ҥ�� Ronald Rivest ��š��Է��������͡ѹ����դ�������觷���ش㹺�ô���š��Է����ҧ� ��� Rivest �Ѳ�Ң���� (��������觾Ԩ�ó���ҡ�س���ѵ������С�â�ҧ��) ������¢ͧ��š��Է��������������ҡ㹡�äӹdz��ʵ�˹��� MD2 �֧���������ա����ҹ�ѹ�ҡ�ѡ
MD2 ���ҧ��ʵ����դ������ 128 �Ե
��š��Է�� MD4
���Ѳ�Ҥ�� Rivest �����ǡѺ MD2 ��š��Է�����Ѳ�Ң����������Ñ�Ҥ�����Ҫ��㹡�äӹdz�ͧ MD2 ���ҧ�á���������ѧ�龺�����š��Է���բ�ͺ����ͧ�������Ǣ�ͧ�Ѻ�س���ѵԢ�ͷ������µç ����Ǥ�ͻÑ�ҡ�ê��ѹ�ͧ��ʵ����͡���Դ����������� ��觼��ء�ء�Ҩ�����ª��ҡ�ش��͹������ͷӡ����䢢�ͤ�����駵鹷�����������
MD4 ��Ե��ʵ����բ�Ҵ 128 �Ե
��š��Է�� MD5
Rivest �繼��Ѳ���蹡ѹ�¾Ѳ�ҵ�ͨҡ MD4 ��������դ�����ʹ��·���٧��� �֧�����繷�������ҹ�ѹ���ҧ������� ����㹻� 1996 ���ռ�龺�ش�����ͧ�ͧ MD5 (�����ǡѺ MD4) �֧�����������������Ŵŧ
MD5 ��Ե��ʵ����բ�Ҵ 128 �Ե
��š��Է�� SHA
SHA ��ͨҡ Secure Hash Algorithm ��š��Է�� SHA ���Ѻ�ǤԴ㹡�þѲ���Ҩҡ MD4 ������Ѻ��þѲ�Ң����������ҹ�����Ѻ��š��Է�� DSS (�����㹡��ŧ�����ͪ�������硷�͹ԡ��) ��ѧ�ҡ������ա�õվ�����������š��Է����������ҹ NIST ���С�ȵ���������š��Է�����繵�ͧ���Ѻ���������������硹��������������ö��ҹ�����ҧ�������
SHA ���ҧ��ʵ����բ�Ҵ 160 �Ե
��š��Է�� SHA-1
SHA-1 ����š��Է�����������������硹��¨ҡ SHA �����������������繷�����͡ѹ��ҷ������š��Է�� SHA-1 �դ�����ʹ��·���٧���
SHA-1 ���ҧ��ʵ����բ�Ҵ 160 �Ե
��š��Է�� SHA-256, SHA-384 ��� SHA-512
NIST �繼����ʹ���š��Է�����������㹻� 2001 ������ҹ�����Ѻ��š��Է�� AES (�������š��Է��㹡���������Ẻ���ҵ�)
��š��Է������ҹ�����ҧ��ʵ����բ�Ҵ 256, 384 ��� 512 �Ե ����ӴѺ
�͡�ҡ��š��Է������Ѻ������ҧ��ʵ������Ƕ֧����ǹ�� ��š��Է������Ѻ����������Ẻ���ҵ� �� DES ����ö��㹡�����ҧ��ʵ��蹡ѹ �Ըա����ҹ��š��Է��Ẻ���ҵ��������ҧ��ʵ��� ������͡�Ø��Ѻ����Ѻ���������ʢ���� 1 �Ø����Ըա�����͡Ẻ���� �������Øᨹ������������ʢ�ͤ�����駵� ������੾�к��͡�ش���·���������������������ʵ�ͧ��ͤ��������� (���������ͤ���� ��������������) ��š��Է��Ẻ���ҵ�����ö���ҧ��ʵ����դس�Ҿ�� �������¤�͵�ͧ������㹡�äӹdz��ʵ��ҡ
��ʵ�������ͧ��ͷ���ӤÑ�������ö��㹡�õ�Ǩ�ͺ��������к������ҹ�ա������¹�ŧ���������� (�����Ҩ���ਵ������������) �ҧ���駡������¹�ŧ����Ҩ�١��з��¼����������Է��� �� ���ء�ء �繵� �Ըա������ʵ����͵�Ǩ�ͺ�����к����������͡����š��Է��˹�� �� MD5 �������ҧ��ʵ�ͧ�����к��������ʵ�������ա���˹�觹͡�к� �����ѧ�ҡ��������˹�觷���˹���� �� 1 ��͹ ���Ҥӹdz��ʵ�ͧ�������ա����˹�� �������º��º��ʵ�������Ѻ��ʵ��������͡�к���ҵç�ѹ������� ��ҵç�ѹ ���ʴ���������к��ѧ�繻��������
��ʵ��ѧ����ǹ˹�觢ͧ���ŧ�����ͪ�������硷�͹ԡ�� ����Ǥ�͡��ŧ�����ͪ�������硷�͹ԡ��㹻Ѩ�غѹ������ŧ�����ͪ��͡Ѻ��ʵ�ͧ��ͤ�����駵�᷹���ŧ�����ͪ��͡Ѻ��ͤ�����駵鹷�駢�ͤ���
����ػ
���������������������鹰ҹ����Ѻ���������ʢ����� �¡���Ƕ֧�ش���ʧ�� 3 ��С�âͧ���������ʢ����� ��š��Է��㹡���������Ẻ���ҵ��������ҵ��Ẻ��ҧ� ��������������㹻Ѩ�غѹ ��þԨ�óҤ�����������ͤ�����ʹ��¢ͧ��š��Է��������͡��ҹ ��������š��Է������Ѻ������ҧ�������ʵ� ����Ѻ�������ҧ෤�Ԥ���������´�ͧ��š��Է��������෤�Ԥ㹡��������ʪ���٧ �����¹���й�˹ѧ��� [1]
��óҹء��
Bruce Schneier, Applied Cryptography: Protocols, Algorithms, and Source Code in C
John Wiley & Sons Inc, December 1995
--------------------------------------------------------------------------------
Home || �͡�������� || Encryption
ThaiCERT Disclaimer | Copyright © 2001 ThaiCERT(NECTEC). All rights reserved.
|
|
|