KR960010767B1 - 암호 시스템 및 그 처리 방법 - Google Patents

암호 시스템 및 그 처리 방법 Download PDF

Info

Publication number
KR960010767B1
KR960010767B1 KR1019880002278A KR880002278A KR960010767B1 KR 960010767 B1 KR960010767 B1 KR 960010767B1 KR 1019880002278 A KR1019880002278 A KR 1019880002278A KR 880002278 A KR880002278 A KR 880002278A KR 960010767 B1 KR960010767 B1 KR 960010767B1
Authority
KR
South Korea
Prior art keywords
bit
bits
value
memory
substitution
Prior art date
Application number
KR1019880002278A
Other languages
English (en)
Other versions
KR880011721A (ko
Inventor
다비오 마르크
가띠에 필립
이스포르딩 빌헬름
뀌스꾸떼르 쟝-자끄
시자브르 허브
Original Assignee
엔.브이.필립스 글로아이람펜파브리켄
이반 밀러 레르너
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엔.브이.필립스 글로아이람펜파브리켄, 이반 밀러 레르너 filed Critical 엔.브이.필립스 글로아이람펜파브리켄
Publication of KR880011721A publication Critical patent/KR880011721A/ko
Application granted granted Critical
Publication of KR960010767B1 publication Critical patent/KR960010767B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • G06Q20/40975Device specific authentication in transaction processing using mutual authentication between devices and transaction partners using encryption therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Finance (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Error Detection And Correction (AREA)

Abstract

내용 없음.

Description

암호 시스템 및 그 처리 방법
제1도는 시판되는 단일 칩 마이크로컴퓨터(톰슨 캄파니의 ET1002 참조)의 영역의 m㎡에 대한 기능할 당선도.
제2도는 간략화된 DES선도.
* 도면의 주요부분에 대한 부호의 설명
1 : 중앙처리장치 2 : 랜덤 억세스 메모리
3 : 판독전용 메모리 4 : 기억 메모리
본 발명은 전환식 엔코딩-디코딩 처리에 의해 정보를 처리하도록 프로그램되는 프로그램 메모리를 갖는 컴퓨터를 포함한 암호 시스템에 관한 것으로, 상기 처리는 서로 반대방향의 최소한 두 치환을 포함하며, 상기 처리되어질 정보는 치환되어지는 p비트를 구비하며, 상기 각 치환은 프로그램 메모리 영역내에 기억된 한정 테이블로 규정되며, 상기 한정 테이블은 p테이블 장소를 구비하며, 각 테이블 위치는 각각 치환되어질 p비트 각각에 대하여 치환후에 연관비트의 새 영역을 직접 표시하기 위한 표시기 값을 포함하며, 이러한 것은 한편으로 각 표시기 값은 테이프 위치를 지정하며 다른 한편으로는 각 테이블 위치는 테이블의 표시기 값을 지정한다.
엔코딩-디코딩 시스템은 발신인, 엔코더 및 수신인, 디코더에 대해 기밀을 유지해야만 하는 정보기억 및 정보전송의 안전보안을 보증하는데 사용된다. 안전보안의 원리는 엔코드된 정보가 위임되지 않으며 비결(key)을 모르는 사람에게는 이해할 수 없으며 소용없다는 사실에 의거한다.
엔코딩-디코딩 기술은 기밀정보처리용 연산처리를 한정하는데 있다. 현재 공지된 데이터 처리 수단은 데이터 처리 속도가 다른 수단에서보다 엔코딩-디코딩 처리를 보다 더 복잡하게 하므로 보다 복잡하게 된다. 반면에 위임받지 못한 사람은 엔코드된 정보를 완전히 재구성하는 목적에 따라 여러번 해독시도를 신속히 실행 하기 위한 데이터 처리를 이용할 수 있다.
상호 역인 두 치환을 포함하는 암호처리는 캘리포니아, 산타바바라, 캘리포니아 대학의 데이비드 샤움씨에 의해 편집된 Crypto 83 회보의 암호문 진보 공보 특히 마크 데비오씨 그외 공동인들에 의한 171 내지 202페이지의 DES의 분석 특성에서 기술되어 있다. 암호문 정보에 대한 관련처리는 페이지 189 및 이하의 페이지에서 기술되며, 이 공보는 또한 대형 저서목록 페이지 199에서 202를 포함한다.
컴퓨터에 있어서, 암호문 처리는 프로그램에 내장되며 이 프로그램의 실행은 컴퓨터, 레지스터, 랜덤 억세스 메모리, 판독전용메모리와 같은 공지된 자원을 필요로 하며 이들 자원은 또한 다른 프로그램에 의해 예를들어 기밀정보를 사용하거나 또는 참조하는 프로그램으로 사용된다.
처리의 복잡성 때문에, 이들 실행을 하는데 필요한 데이터 처리 자원은 이러한 문제에 대해 모든 주의들 기울임에도 불구하고 임의 컴퓨터 특히 마이크로컴퓨터는 디코딩 처리를 포함할 수 있을 정도의 충분한 용량을 갖지못할 정도로 많아지게 된다. 이러한 유감스러운 상황의 전형적인 예가 메모리 카드인데, 메모리카드와 함께 메모리는 오늘날 비교적 제한된 용량의 마이크로컴퓨터를 구비한 표준화된 제품이며, 메모리 카드의 은행업 응용에 있어서는 아직도 카드 메모리에서 엔코딩의 처리가 불가능하다. 이 때문에, 엔코딩은 리더와 카드 자체간의 정보전송동안 안전보장의 문제를 일으키는 메모리 카드 리더로만 실행될 수 있다.
본 발명의 목적은 상기 처리가 그렇게 함으로써 실행지속시간을 실제로 증가시키지 않고도 제한된 용량의 (마이크로)컴퓨터에 포함될 수 있는 방법으로 암호처리의 실행에 필요한 데이터 처리 자원을 상당히 감소시킴으로써 이러한 단점을 극복하는데 있다.
본 발명에 의하면, 암호 시스템은 특히 프로그램 메모리가 서로 역관계인 두 치환을 한정하는 단지 하나의 유일한 한정 테이블을 포함하며 상기 단일 테이블은 블럭 표시기를 포함하는 p테이블 장소를 각각 갖는 상기 두치환 테이블중 임의것으로 구성되며, 상기 단일 테이블은 b 개개 번호화된 블럭으로 분할되며, 각 블럭은 v표시값(b 및 v는 b.v=p), 각 표시값은 공지된 개개의 번호를 갖는 상기 블럭중 한 블럭에 위치되며, 고려된 테이블의 각 장소에 있어서, 블럭 표시기는 상기 고려된 테이블 장소를 지시하는 표시값을 포함한 개개의 블럭 번호 표시하며, 각 테이블 장소는 또한 자체 블럭 표시기에 의해 간접적으로 이것을 지정하는 테이블 위치를 지정한다는 특징이 있다.
따라서 이것은 단일 테이블에 가산된 블럭 표시기에 의해 검색될 수 있으므로 이렇게 함으로써 제공된 정보의 손실없이도 두 테이블중 하나에 의해 명목상 점유된 메모리 영역을 절약할 수 있다.
그러나 블럭 표시기는 테이블의 크기를 실제로 증가시키지 않는다는 것을 보장할 필요가 있다.
이러한 목적상, y비트(y는 정수)의 2진 워드로 작동하는 컴퓨터를 사용하면, 각 표시값은 x비트수로 번호화되며 이 x는 y의 배수 Ky(k는 정수)와는 다르며, 즉 Ky -x=z(z는 정수), 본 발명에 따른 암호 시스템은 특히 b블럭이 0에서 b-1의 2진수로 주어지며, b는 b가 적어도 2B와 동일하게 즉 b-1≤2B-1이 되도록 선택된다는 특징이 있다. 따라서 사전 사용될 수 없는 테이블에서의 비트 장소를 사용할 수 있으며, 이 때문에 테이블로 점유된 메모리 양은 블럭 표시기의 추가 존재에도 불구하고 증가되지 않는다.
상기 공보의 페이지 183 및 184에서 규정된 바와 같은 DES 암호 처리의 특정한 경우에 있어서, 서로 역관계인 두 치환 IP 및 IP-1는 이들중 하나가 두 개의 P-1치환으로 그룹되며 나머지 하나가 두 개의 p 치환으로 구룹되는 정도로 그룹되며, 생성된 치환은 이후부터 IP.P-2및 P.IP-2로 명명되며, 이들은 치환되어지는 64개의 2진 데이터 즉 64테이블 장소(p=64)를 구비한 정보에 적용되며, 8-비트 2진 워드(y=8)로 동작하는 컴퓨터에 있어서, DES 처리에 적용된 암호 시스템은 본 발명에 따라 특히 상기 IP.P-1및 P.IP-1를 처리하는 단일 테이블이 단지 32개의 테이블 장소를 포함하며, 각 i번째 1≤i≤32) 테이블 장소는 단일 블럭번호 및 단일 표시값을 포함하며, 상기 단일 표시값은 치환되어지는 2개의 2진 데이터, i번째 데이터 및 32+i번째 데이터를 (한방향으로) 처리하는데 사용되며, 상기 단일 블럭 번호는 치환되어지는 2진 데이터 2i번째 및 2i-1번째를 (다른방향으로)처리하는데 사용되며, 단일 테이블은 8블럭(b=8)으로 분할되며, 32테이블 장소 각각은 3비트(z=3)의 블럭 번호 및 5비트(x=5)의 표시값을 포함하는 8비트(y=8)를 구비한다.
따라서 단일 테이블은 단지 32개의 프로그램 메모리 바이트만을 점유하며, 이러한 결과는 데이터 처리 자원을 현저히 절약한다는 것을 나타내며, 사실상, 메모리 크기는 종래 기술에서는 64바이트를 갖는 2테이블이 각각 필요로 하기 때문에 4분의 1로 감소된다.
상술된 바와 같이, 데이터 처리 자원은 프로그램 메모리 뿐만 아니라 명령셋트 레지스터 및 랜덤 억세스 메모리로 구성된다.
치환의 처리동안, 처리되어지는 정보는 랜덤 억세스 메모리에 반드시 기억된다. 현 기술상태상, 예를들어 메모리 카드에서 사용된 마이크로컴퓨터에 있어서, 랜덤 억세스 메모리는 판독 전용 메모리의 비트당 110μ㎡의 실리콘으로 충분하므로 랜덤 억세스 메모리의 비트당 약 1,500μ㎡의 실리콘이 필요로 하다는 점에서 매우 경제적이다. 그러므로 랜덤 억세스 메모리 비트의 수를 감소시키는 것이 중요하다.
본 발명에 따르면, y비트를 갖는 누산기를 갖는(마이크로)컴퓨터에서 수행되어지며 제1순차의 p비트를 치환하여 제2순차의 p비트를 얻기 위한 치환 처리는 특히 각 사이클에 대하여 다음의 단계를 포함한다. 즉,
a) 입력점의 값 Vi의 메모리 레지스터에 기억 및 입력점 값 i에 의해 정해진 제1순차의 i번째 비트의 캐리위치로 전달하고,
b) 메모리 레지스터의 내용으로 한정된 비트를 포함하는 제1순차의 워드 Mm의 누산기내로 로딩하고
c) 메모리 레지스터의 내용으로 한정된 비트라 워드 종료가 되도록 비트위치수에 의해 누산기 자체 내에서 회전하고
d) 한편으로 워드의 종료에 사전 위치된 비트가 현재 캐리에 설정되며 다른 한편으로 캐리에 산전 설정된 비트가 누산기에 입력되는 방향으로 단일 비트 위치에 의해 누산기의 캐리로 회전하고
e) 각 비트가 현재 캐리 위치에 있는 것을 제외하고는 초기위치로 복귀되도록 비트 위치수에 의해 자체내에서 누산기의 회전
f) 단계 b)에서 사전 샘플된 워드 Mm의 비트를 제1순차의 위치로 복귀하기 위하여 누산기를 언로딩 하고,
g) 상기 메모리 레지스터의 내용으로 한정된 위치 i의 Vi 값에 대해 명령 테이블에서 탐색하고, 동일 메모리 레지스터에서 발견된 값을 기억하고,
h) 단계 b)로부터 복귀함으로써 사이클 처리를 계속하기 위해 비동일성의 경우에 있어서 메모리 레지스터의 내용을 사이클의 입력점의 Vi 값을 순서적으로 비교하고, 동일성의 경우에 있어서, 완료 치환이 달성될 때까지 다른 사이클을 처리하는 단계를 포함하며 치환은 p 표시값 Vi(1≤i≤p)를 구비하는 명령 테이블로 규정되며 각 i번째 값 Vi는 제1순차의 i번째의 비트의 제2순차에서 수신지 위치인 것을 표시하며 이렇게 한정된 치환은 최소한 루프백되는 c(i≤c≤p) 값 Vi의 한 사이클을 포함하며 입력점은 c표시값 Vi 중에서 각 사이클에 대해 임의로 선택되며 제1비트 순차는 y비트의 m(m은 양정수)워드 Mm(0≤r≤r≤r인 p=y(m-1)+r)로 구성되는 것으로 고려된다.
따라서 일시적 작업 메모리 영역으로서 새로운 방법으로 캐리비트를 사용하는 본 발명에 따른 처리수단은 치환 전후에 두 순차 p비트에 대한 단일 래덤 억세스 메모리의 점유를 가능하게 하도록 하는데, 이것은 제2순차가 캐리비트를 통해 각 비트의 교환동안 제1순차 대신에 대치되기 때문이다.
또한, 치환 처리는 테스트 비트, 셋트 비트, 리셋트 비트와 같은 표준비트 관리 명령을 사용하지 않으며, 이것은 임의 마이크로컴퓨터의 명령 셋트가 비트 관리 명령을 포함하지 않는 것과 같이 또다른 장점이다.
DES의 경우에 있어서, 치환되어지는 정보는 8비트(64비트)를 구비하며, 본 발명에 따른 처리는 그러므로 8개의 랜덤 엑서스 메모리 바이트를 절약할 수 있다.
마지막으로 본 발명의 수행은 기술적 결과로서 데이터 처리 자원의 절약을 갖는다.
이들 특성은 특히 메모리 카드 자체에서 DES를 응용할 수 있으며 더 이상 메모리 카드 리더에서는 DES를 응용하지 않는다.
이 때문에, 중앙컴퓨터, 전송 회로망 및 메모리 카드 리더를 포함한 통신 시스템에 있어서, 각 카드 리더는 카드 리더가 단순한 우편함 기능을 제공하는 것에 지나지 않으므로 제조시에 보다 더 간단화될 수 있다.
본 발명의 첨부된 도면을 참조하여 이후 기술될 제한되지 않는 실시예에서 보다 명백해질 것이다.
제1도는 칩 P의 개략도이며, 전체 영역은 예를들어 4개 죤으로 분할된 25m㎡이다. 죤(1)은 영역의 6분의 1을 점유하는 중앙처리장치(CPU)이며, 죤(2)은 영역의 6분의 1을 점유하는 랜덤 억세스 메모리(RMA)이며, 죤(3)은 영역의 6분의 1을 점유하는 판독 전용 메모리(ROM)이며, 죤(4)은 영역의 절반부를 점유하는 EPROM의 기억 메모리이며, 여러 죤은 버스 및 도시되지 않은 제어 라인으로 연결된다.
죤(2)은 44바이트 용량을 갖는다.
죤(3)은 2K바이트 용량을 갖는다.
죠(4)은 1K바이트 용량을 갖는다.
제1도에서는 메모리 바이트를 고려하여 메모리에 할당된 영역의 5분의 1(즉 20%)이 메모리의 단지 1.4%(=44/(44+2K+1K)를 만드는데 사용되므로 랜덤 억세스 메모리(RMA)가 어떻게 경제적으로 제조되는가를 도시한다.
제1도에서 도시된 선도는 톰슨 캄파니에서 제조 및 판매하는 칩 EP1002로 참조된 것과 상응한다. 판독전용 메모리의 죤(3)은 구매자가 이러한 방법으로 전용화된 제조 마스크를 생산할 목적으로 미리 제공해야만 하는 실행 프로그램의 명령을 포함한다.
프로그램이 제공된 칩으로 구성된 최종 어셈블리는 한 구매자에서 다른 구매자로 기술적 수행능력이 변화하는 데이터 처리 기계를 구성한다.
그러므로 처리로 사용된 랜덤 억세스 메모리 바이트수의 감소는 중요한 기술적 장점을 제공한다.
동일하게 처리 명령을 기억하는데 사용된 판독 전용 메모리 바이트수의 감소도 또한 중요한 기술적 장점을 제공한다.
메모리 카드로 은행업 사용시에, 죤(4)(EPROM)은 특히 유저가 예를들어 위임된 상인으로부터의 구매, 대체 등등을 실행하기 위해 카드를 사용할 때 점차적으로 트랜섹션을 기억하는데 사용된다.
공지의 엔코딩 기계에 있어서, 엔코드 되어지는 데이터를 갖는 DES와 같은 암호 처리는 64비트를 구비하며, 치환 전후에 제1 및 제2순차가 랜덤 억세스 랜덤 억세스 메모리중 16바이트를 점유하며, 여기서 또한 8바이트 엔코딩 키를 갖는 것이 필요하다. 따라서, 랜덤 억세스 메모리의 24바이트는 이에 처리를 시작하기 전에 점유되어 있다. 처리 자체는 기억하기 위해(명령+테이블+…)판독 전용 메모리의 1.5K 바이트를 필요로 한다. 이들 데이터는 카드 억세스 단말기에서만 DES를 수행하기 위해 현재시간까지 가능한 이유를 설명한다.
이 때문에, 카드와 단말기간의 정보 교환은 엔코딩으로 제공된 안전보장의 이익을 제공할 수 없다.
제2도는 상기 공보의 183페이지에서 규정된 바와 같은 DES 처리를 도시한다.
입력 DAT-IN에 대해 처리되었지는 정보는 제1치환 IP.P-1을 받게 되며, 출력 데이터 DAT-OUT를 제공하기 위하여 P.IP-1치환되기 전에 반복처리 I.ITER에 의해 동작된다.
역처리시에, 이들 두 치환은 제1치환이 비트 번호 i에서 위치번호 j로 이송되며, 제2치환이 비트 번호 j에서 위치번호 i로 이송(또는 귀환)되면 테이블 P.IP-1로 고려하는 점에서 서로 역관계이며, 후에 설명된 바와 같이, 각 비트 번호 또는 표기값을 바이트 비트수로 엔코드 하기에 유리하며, 이것은 치환 한정 테이블인 테이블 I에서 보여진다.
Figure kpo00001
테이블의 64 표시값은 치환전에 비트 위치의 순서에서 좌측에서 우측으로 상단에서 하단으로 배열되며, 각 값은 수신지 바이트 번호 및 수신지 비트 번호를 구비하며, 예를들어 치환전에 바이트번호의 비트번호 4에 위치된 비트(2,4)는 치환후에 고려된 비트는 비트번호 1의 바이트번호 4에 위치되는 것을 표시하는 테이블(밑줄친 값)의 값(4,1)에 상응한다.
이 테이블로부터 최대값은 바이트번호 7의 비트번호 7인 64 치환된 비트의 최종비트의 대응하는 (7,7)인 것을 알 수 있다. 또한 이 테이블은 두 사이클을 포함한다.
이와같이 도시된 이 테이블 P.IP 는 완전하게 현저한 두 질을 가지며, 치환되어지는 죤의 제1의 32비트의 각 비트의 수신값은 모두 기수값을 가지며 최종 32비트에 대하여 값은 반드시 우수값을 가지며, 우수 및 기수값은 4바이트로 변환후에 정확히 1만큼 다르다. 예를들어 비트(0,0)의 수신지값(7,3)은 1 및 비트(4,0) (바이트번호 4의 비트번호 0)의 4개 바이트 아래 위치된) 수신지값(7,2)과 동일하다.
본 발명에 따르면 테이블 값의 번호는 테이블로 점유된 메모리 양을 절반으로 감소시키는 2로 분할된다.
예를들어, 단지 32 기수값을 보유함으로써, 완전한 치환이 처리될 수 있으며, 사실상 초기 영역이(4,0)보다 크거나 같은 비트의 수신지 위치를 탐색하기 위하여, 이 영역 어드레스에서(4,0)을 감산하여 대응값을 보유 절반 테이블에서 찾으며 부재 절반 테이블에 명목상 위치된 정확한 수신지를 찾기 위하여(4,0)을 감산함으로써, 비트(5,2) (바이트 5비트 2)의 수신지인(2,6)을 얻기 위하여 1이 감산되어지는 테이블의 값(2,7)을 제공하여(1,2) (바이트 1비트 2)를 얻는다. 테이블 값의 번호는 정보 손실없이 2로 분할될 수 있다.
32 나머지 값은 모두 동일 패리티값이며(우수 또는 기수는 선택된 절반 테이블에 의해 결정), 각 값의 최종 비트는 중요하지 않으며 적합한 실시예에 있어서는 무시될 수 있으며, 그러므로 32 각 나머지 값에 대하여, 단지 5비트만이 중요하다. 3비트는 8수신지 바이트를 0에서 7로 번호화하며, 2비트는 패리티 비트없이 비트 번호용이다.
상기와 같이, 두 DES 치환 IP.P 및 P.IP 는 서로 역관계이며, 이들 두 치환을 규정하여 실행하기 위하여, 두 테이블이 일반적으로 공지의 DES로 제안 및 사용된다. 그러나 이들 테이블중 하나만으로 충분하며, 사실상 단일 테이블은 한편으로는 전방향으로 공지된 방법으로 사용되며, 다른 한편으로는 복귀방향으로 즉 다른 치환으로 사용된다. 비트 J가 나오는 위치i인 상기 단일 테이블에서 탐색을 실행할 수 있으며 비트 J는 이 위치에서 설정된다. 단지 한 단일 테이블을 사용하는 단점은 테이블에서의 탐색이 치환 프로그램에 의해 순차로 실행되는데, 이것 때문에 각 탐색은 64값을 구비하는 공지된 테이블에서 매우 긴 테이블의 절반을 순차 스캐닝 지속에 대응하는 평균 지속시간을 갖는다.
상기 기술된 바와 같이, 32값으로 테이블의 감소는 이미 탐색 시퀀스의 가속을 가능하게 하지만 성취된 속도는 아직도 불충분하다.
본 발명에 따라서, 테이블은 각기 번호로된 블럭 b 및 각기 번호로된 복귀 지시자(return indicator)블럭p으로 구성된 것으로 간주된다. 각 블럭이 b로 분할된 테이블의 위치의 번호와 동일한 다수의 위치를 포함하고 있기 때문에 평균 써치 시간이 b로 분할되도록 값 j를 포함하는 테이블의 블럭중의 한블럭의 번호를 지시하기 위하여 복귀 지시자 p는 테이블의 각j 값과 관련된다.
상기 테이블 1을 16값의 4블럭으로 임의로 분할하는 예를 들어보면, 각(n-4) 블럭 1은 바이트 0 및 1과 관련하는 값을 포함하고 있으며, 블럭 2는 바이트 2 및 3과, 그리고 기타 등등과 관련하는 값을 포함하고 있다. 테이블 1로부터 알 수 있는 바와 같이, 전진 방향에서 비트(2,4) (바이트 2, 비트 4, 블럭 2)는 치환 이후 위치(4,1)에서 배치되며, 위키(4,1)에서 값(7,4)가 발견되며, 복귀하기 위한 문제는, 그러므로 이 값(4,1)을 지적하는 테이블의 위치를 찾기 위하여, 위치(4,1)에 있는 비트를 아는 것이다. 이 값이 제2블럭에서 얻어지는 것을 지시하기 위하여, 복귀 블럭 지시자(p=2) 값(7,4)과 관련된다. 그때 테이블 위치는 (2,7,4) (블럭 2, 바이트 7, 비트 4)가 되며, 상기 순차적 탐색은 값(4,1)이 배치되어 있는 제2블럭의 16값으로 제한되게 되며, 탐색의 평균 지속기간은 반-블럭, 즉 8값이 되게 된다.
본 발명의 양호한 실시예에 따라서, 테이블은 8블럭(n=8)으로 구성된 것으로 간주된다. 이미 기술된 반-테이블의 경우에 있어서, 각 블럭은 탐색의 평균 지속 기간이 명백히 아주 빠른 2값이 되도록 4값을 포함한다. 또한 n=8의 선택은 반-테이블의 메모리 크기를 증가시키지 않는 장점을 갖는다. 사실상, 상기 언급된 바와 같이, 반-테이블의 각 값은 복귀 블럭 지시자가 배치될 수 있는 3프리 비트를 한 메모리 바이트에서 남기는 5 상위 비트를 단지 포함한다.
그리하여, 발명에 따라서, 각각의 32 테이블 위치는 3비트가 복귀 블럭 지시자용이며, (비트 번호용 2의 바이트 번호에 대한 3) 5비트가 지정(destination) 위치용인 8비트를 구비한다.
64바이트 각각의 2 테이블을 구비하는 공지된 상황을 언급하면, 발명에 의하여 얻어진 기술적 처리는 32비트의 단일 테이블의 이들 치환의 실행 행위에 불리를 주지않고도 두 치환을 실행하는데 충분하다는 사실로 평가된다. 메모리 크기는 4로 분할된다.
비-제한 지시의 경우에, 테이블 2는 발명에 따른 반-테이블이 취해질 수 있는 형태이다.
Figure kpo00002
Figure kpo00003
테이블 2a는 실질 6진값으로 도시된다. 테이블 2b는 테이블 2a에서 8블럭의 번호를 도시한다.
블럭 0은 4값 9D, 5E, 46, C7을 포함하며, 제1값 9D=10011101이며, 그것의 여덟 비트들은 좌에서 우로 0에서부터 7가지의 번호로 되며,
비트 0 내지 2=100 복귀 블럭의 번호
비트 3 내지 5=111 지정 바이트의 번호
비트 6 내지 7=1 지정 비트의 (패리티가 없는) 번호를 의미한다.
이 테이블에서 이러한 표시는 다음과 같이 사용된다.
a) 전진 치환에 있어서 :
상기 기술된 바와 같이, (4,0)와 떨어져 있는 시작 비트는 테이블 2의 동일한 값과 대응한다. 예를들어, 비트(6,4) 및 (2,4)는 테이블의 90값, 즉, 10010000을 제공하며 다음의 지정 위치가 얻어진다.
비트 3 내지 6=100, 즉 바이트 4
비트 6 내지 7=00, 즉 적당한 패리티 비트((6,4)에 대하여 0, (2,4)에 대하여 1)를 가산함으로써, 비트 000 및 비트 001과 테이블 1의 값(4,0) 및 (4,1)이 다시 얻어진다.
b) 복귀 치환에 있어서 '
위치 2i 및 2i-1로 진행하여야 하는 비트는 테이블 1에서 도시된 바와 같이, 4테이블만큼 떨어진 두 위치로부터 반드시 와야만 한다. 2 인접한 비트에 있어서, 복귀 어드레스는 가장 가까운 4 바이트까지 동일하다. 이들 두 인접 비트와 공통인 복귀 블럭 번호는 명백히 테이블 2에서 단일 위치를 점유하여야만 한다. 또한 이 위치의 어드레스는 2 인접 빌의 어드레스로부터 쉽게 얻어져야 한다.
양호한 실시예는 테이블 2의 실시예이다. 비트(7,2) 및 (7,3)의 복귀 어드레스가 얻어진다고 가정하자, 3비트를 2배할시에, 우리는
(7,2)=111010
(7,3)=111011
를 가지며, 처음 두 비트로 우리는 동일한 값 11 또는 10진법으로 3을 가지며, 다음 세 비트로 우리는 동일한 값 101또는 10진법으로 5를 갖는데, 이것은 얻어진 어드레스가 (3,5) (바이트 3, 비트 5)인 것과 부합한다. 이 어드레스에서, 17이 테이블 2에서 얻어진다. 즉, 상기 기술된 바와 같이, 처음 세 비트를 갖고, 얻어진 블럭 번호, 즉 0을 제공하는 0001 0111을 얻는다.
테이블 2의 블럭 번호 0는 네가지 값 9D, 5E, 46 및 C7을 포함한다.
테이블 2가 상기 기술한 바와 같이 패리티 비트를 무시하면, 이들 네값중의 어느것이 비트(7,1) (=11101, 최하위 비트를 제거시킴으로써(7,2) 및 (7,3)으로부터 얻어진 값)을 지적하는가를 찾는 것이 적당하다. 처음 값 9D=100[11101]은 다섯 우측 비트가 다른 값, 즉 5E=010[1 1110], 46=010[0 0110], C7=110[0 0111]에 대한 경우가 아닌 값(7,1)을 가지고 있다는 것이다. 9D는 배치(0,0)에 있고 그리하여 두 개의 얻어진 값은 (4,0)이 (7,2)를 지적하고 (0,0)이 (7,3)을 지적하는 테이블 1의 값에 대응하는 (0,0) 및 (4,0)=(0,0)+(4,0)이다.
본 발명에 따라서, 테이블 3은 특히 치환 처리를 위해 필요한 랜덤 억세스 메모리의 용량이 감소하게 되는 치환 처리를 나타낸다.
Figure kpo00004
테이블 3a는 정의표(TA)값 C(i,j)에 따라서 치환된 6비트의 출력 죤(ZS)이 되게 하기 위해 6비트의 입력죤(ZE)에 걸쳐 작용하는 치환을 정의한다. 번호(60)는 제한하는 것이 아니며 이것은 비트수가 치환될때 마다 인가하는 것을 명확하게 한다. 편리함을 위해 6비트는 표의 값처럼 1부터 6까지 번호(BN)를 붙였다. 또한 편리함을 위해, 입력 죤의 비트는 치환 처리의 연속적인 단계의 이해를 도모하기 위해 a,b,c,d,e,f로 칭한다. 정의표는 6개값(3,6,5,1,2,4)을 구비한다. 표의 값의 각각에 대해, 세 번째 값은 입력 죤 ZE (C)의 세 번째 비트가 치환후에 출력 죤의 5 위치에 위치되게 하는 것을 나타내는 5(i=3, j=5)와 동일하다. 상기 예에서, 상기 표는 증가하는 i의 정확한 순서로 위치되는 j의 여섯 개 값만 구비하며, 상기 배열은 i및 j의 이중 혼성모음 값의 테이블 쌍 C(i,j)에 대응한다.
상기 치환을 실행하기 위하여 본 발명에 따른 처리는 테이블 3b에 설명되고, 상기 처리는 입력 및 출력에 대해 동일한 랜덤 억세스 메모리를 이용한다.
임의로 시작 비트를 선택하여, 예를들면, 입력 죤의 제3비트, 즉 C, 상기 비트는 초기에 3b1에 도시된 것처럼 캐리 위치 RE에 위치한다. 표는 상기 비트(C)가 위치 5로 가는 것을 나타내며 여기에서 비트 e는 현재에 위치 2로 가게 되어서 위치된다. 제1단계는 3b2에 도시된 것처럼 비트 e가 워드가 좌측단부를 가져오도록 그들 자체를 통한 비트의 회전이며, 캐리비트의 값은 변환되지 않는다.
제2단계는 3b3에 도시된 것처럼 비트 e를 캐리내로 가져오고 캐리 비트 C가 워드의 단부를 동시에 가져오도록 위치 1에 의해 캐리를 통해 왼쪽으로 회전이다. 제3단계는 이들이 3b4에 도시된 초기 위치를 가져오도록 그들 자체를 통한 비트의 회전이다. 상기 제1반복의 단부에서, 이전에 캐리 위치내에 배치된 비트 C는 한정적인 위치에 있으며 비트 e는 현재 캐리 위치에 있다. 이것은 상기 처리가 반복한다는 것이 명백하다. 비트 e에 관련된 폰 TA(j=2)의 제5값을 생각해보면 동일한 처리는 비트 b가 캐리위치에 있는 동안에 비트 e가 한정적인 위치에 있게 되게 3b5에 도시된 위치를 확득하도록 e 및 b를 치환할 것이다.
기술된 처리는 4 위치에 의해 왼쪽으로 회전하므로서 시작되나 1위치에 의해 우측으로 회전은 동일한 결가가 다음 회전의 방향 및 번호 위치를 적당한 조건으로 획득하게 한다. 2위치에 의해 우측으로 회전은 3b2에 도시된 위치로 유도한다. 상기 변형은 본 발명의 범주로부터 이탈되지 않는다.
8비트로 운용하는 공지된 마이크로컴퓨터에 대해서, 상술한 것처럼 누산기내로 집어넣게 되는 바이트를 이송(연산코드=로드)하기 위해 필요하다. 상기 처리를 수행하기 위해 사용된 연산 코드는 예를들면, 오른쪽/왼쪽으로 회전하고, 유효한 명령어 세트에 따라 캐리 오른쪽/왼쪽으로 회전한다.
기술된 예의 표(TA)를 관찰하므로써 반복 처리가 단일 사이를 즉, (3,5),(5,2),(2,6),(6,4),(4,1),(1,3)을 구비하는 상태가 되게 할 수 있다. 6 반복 비트 후에 N3이 다시 도달되고 치환은 완료된다. 이것은 입력 포인트가 임의로 선택될 수 있는 것을 증명한다.
다른 테이블에서, 테이블 3C의 테이블 TAB의 예를들면, 제1사이클의 존재는 즉 (3,5),(5,2),(2,6),(6,3)을 나타내고 제2사이클의 존재는 (1,4),(4,1)을 나타낸다. 본 발명은 사이클 수가 인가될지라도, 이것은 상기 사이클 수가 표의 간단한 관찰로부터 쉽게 유도할 수 있으며 이것이 엔코딩 알고리즘의 일부이기 때문에 반드시 알아야 한다. 완료된 치환을 수행하기 위하여 각 사이클에 대한 입력 포인트를 한정하고 다수 사이클처럼 실행 및 필요한 것만큼 반복한다면 충분하다. 각 사이클의 단부는 상기 사이클의 입력 포인트 비트가 다시 만나게 될때 알게 된다.
사이클 개념의 더많은 정보를 얻기 위해 참조는 이미 언급된 공보(다비오) 페이지 190, 마지막 절 번호 3에서 알 수 있다.
저체내에 입력 죤비트의 치환의 상기 처리는 출력 죤이 입력 죤에 중첩되는 기술을 갖는다. 치환되는 죤이 64비트를 구비하는 DES의 특정한 경우에, 랜덤 억세스 메모리의 64비트를 제외하는 것이 매우 이롭다.
비트 치환 처리에 의한 비트는 처리 IP.P 및 P.IP 을 위하여 블럭 표시기를 포함하는 64 대신에 32표 위치의 단일표와 동시에 DES로 수행되는 것이 유효하다.
상기 양호한 수행은 기술하는 발명으로부터 유효한 DES의 수행을 위해 필요한 데이터 처리 리소소가 랜덤 억세스 메모리의 17바이트로 감소되고 프로그램 메모리의 77바이트보다 더 적게 하는 것이다. 이것은 하드웨어 수단에 저장하는 50%보다 더 많이 대응한다.
이러하기 때문에, DES는 소형 컴퓨터 및 특히 메모리 카드에 수행시킬 수 있다.
그래서 은행 업무처리를 위한 전송 시스템의 안전은 카드와 카드 판독기 사이를 통과하는 정보의 억세스가 이제 더 이상 사기행위자에 좌우될 수 없다.

Claims (6)

  1. 특히 역 엔코딩-디코딩 처리에 따라 정보를 처리하도록 프로그램된 프로그램 메모리를 갖는 컴퓨터를 포함하며, 상기 처리는 적어도 서로 반대방향의 두 치환을 포함하며, 처리되어지는 정보는 치환되어지는 p 2진 데이터를 구비하며, 각 치환은 프로그램 메모리 영역에 기억된 한정 테이블로 규정되며, 각 한정 테이블은 p테이블 위치를 구비하며, 각 테이블 위치는 치환되어지는 p 2진 데이터 각각에 대해 치환후에 각 2진 데이터의 새로운 영역을 직접 표시하는 표시값을 포함하는데, 각 표시값이 테이블 위치를 능동적으로 지정하는 한편 각 테이블 위치는 테이블의 표시값을 수동적으로 지정하는 암호 시스템에 있어서, 상기 프로그램 메모리는 서로 역관계인 상기 두 치환은 규정하는 단하나의 유일한 테이블만을 포함하며, 상기 단일 테이블은 p테이블 위치 각각이 블럭 표시기를 포함하는 상기 두 치환 테이블중 임의적으로 구성되며, 상기 단일 테이블은 b 개별 번호화된 블럭으로 분할되며, 각 블럭은 v 표시값(b 및 v는 b.v=p)을 포함하며, 각 표시값은 개개 번호가 알려진 상기 블럭중 한 블럭에 위치되며, 고려중인 테이블의 각 위치에 대하여, 표시값을 포함하는 블럭은 고려중의 테이블 위치를 지정하는 것을 특징으로 하는 시스템.
  2. 상기 컴퓨터가 y비트(y는 정수)의 2진 워드로 동작하며, 각 표시값은 x비트 번호에 의해 번호화되며 이 번호x는 y의 증배 Ky(k는 정수)와 다르며, 즉 Ky -x=z(z는 정수)인 제1항에 있어서, b블럭은 0에서 b-1의 2진수로 주어지며 b는 b가 적어도 28와 동일하게 즉 b-1-≤2B-1하도록 선택되는 특징으로 하는 시스템.
  3. 역 엔코딩-디코딩 처리는 두 역치환 IP.P-1및 P.IP-1를 포함하는 데이터 인크리셥 표준(DES)이며, 처리되어지는 치환되어지는 64개의 2진 데이터를 구비하여(p=64), 상기 컴퓨터는 8-비트 2진 워드(y=8)으로 동작하는 제2항에 있어서, 상기 IP.P-1및 P.IP-1를 처리하는 단일 테이블은 단지 32 테이블 위치를 포함하며, 각i번째(1≤i≤32) 테이블 위치는 단일 블럭번호 및 단일 표시값을 포함하며, 상기 단일 표시값은 치환되어지는 두 2진 데이터, i번째 데이터 및 32-i번째 데이터(한 방향으로)각각 처리하는데 사용되며, 상기 단일 블럭 번호는 치환되어지는 2진 데이터, 2i번째 및 2i-1번째 데이터를 각각 처리하는데 사용되며 32 테이블 위치 각각은 3비트 블럭 번호(z=3) 및 5비트의 표시값 (x=5)을 포함하는 8비트(y=8)를 구비하는 것을 특징으로 하는 시스템.
  4. 제1순차의 p비트를 치환하여 결과적으로 제2순차의 p비트 치환을 얻는 y비트를 구비한 누산기를 포함한 (마이크로)컴퓨터로 수행되며, 상기 치환은 p표시값 Vi(1≤i≤p)를 구비한 명령 테이블로 한정되며, 각 i번째 값 Vi는 제1순차의 i번째 비트의 제2순차에서 수신지 위치인 것을 표시하며, 이렇게 규정된 치환을 루프백되는 C (1≤c≤p) 값 Vi의 적어도 한 사이클 및 Vi 값의 C쌍 중에서 각 사이클에서 임의로 선택되어진 입력점을 포함하며, 제1비트 순차는 y비트의 m(m은 양정수) 워드 Mm으로 구성되는 것으로 고려되는((p-y).(m-1)+r, o≤r≤y)) 치환처리 방법에 있어서, 한 사이클에 대해서 a) 입력점의 값 Vi의 메모리 레지스터에 기억하여 입력점의 값 i로 저해진 제1순차의 i번째 비트의 캐리위치로 이송되며, b) 메모리 레지스터의 내용으로 한정된 비트를 포함한 제1순차의 워드 Mm의 누산기내로 로딩하고, c) 메모리 레지스터의 내용으로 한정된 비트가 워드 종료가 되도록 비트 위치수만큼 누산기 자체 내에서 회전하고, d) 워드 종료에 사전 위치된 비트가 현재 캐리로 설정되는 한편, 캐리로 사전 설정된 비트가 누산기내로 입력되는 방향으로 단일 비트 위치만큼 누산기의 캐리로 회전하고, e) 각 비트가 현재 캐리 위치에 있는 것을 제외하고는 초기위치로 복귀되도록 비트 위치수만큼 자체내에서 누산기를 회전하고, f) 단계 b)에서 사전 샘플된 워드 Mm의 비트를 제1순차의 위치로 복귀시키기 위해 누산기를 언로딩하고, g) 상기 메모리 레지스터의 내용으로 한정된 위치 i의 Vi 값에 대해 명령 테이블에서 탐색하여 이 동일 메모리 레지스터에서 발견된 값을 기억하고, h) 메모리 레지스터의 내용을 사이클의 입력점값 Vi 와 차례로 비교하여, 동일하지 않은 경우에 있어서는 단계 b)로 복귀하여 사이클 처리를 계속하고, 동일한 경우에 있어서는 치환 완료가 달성될 때까지 다른 사이클을 처리를 행하는 단계를 포함하는 것을 특징으로 하는 방법.
  5. 제1,2 또는 3항에 있어서, 제4항에 따른 치환 처리 방법에 의해 치환 처리를 수행하는 수단을 포함하는 것을 특징으로 하는 시스템.
  6. 상기 메모리 카드 및 통신 시스템간에서 교환된 정보를 상기 카드 자체에서 엔코딩-디코딩하기 위해 메모리 카드에 대한 제1,2,3 또는 5항에 따른 암호 시스템의 응용.
KR1019880002278A 1987-03-06 1988-03-05 암호 시스템 및 그 처리 방법 KR960010767B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR87-3083 1987-03-06
FR8703083A FR2611962B1 (fr) 1987-03-06 1987-03-06 Systeme et procede pour cryptographie avec application
FR8703083 1987-03-06

Publications (2)

Publication Number Publication Date
KR880011721A KR880011721A (ko) 1988-10-31
KR960010767B1 true KR960010767B1 (ko) 1996-08-08

Family

ID=9348689

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019880002278A KR960010767B1 (ko) 1987-03-06 1988-03-05 암호 시스템 및 그 처리 방법

Country Status (6)

Country Link
US (1) US5001753A (ko)
EP (1) EP0282123B1 (ko)
JP (1) JPS63236074A (ko)
KR (1) KR960010767B1 (ko)
DE (1) DE3885123T2 (ko)
FR (1) FR2611962B1 (ko)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2650457A1 (fr) * 1989-07-25 1991-02-01 Trt Telecom Radio Electr Procede de traitement de donnees par compression et permutation pour carte a microcircuit
FR2651347A1 (fr) * 1989-08-22 1991-03-01 Trt Telecom Radio Electr Procede de generation de nombre unique pour carte a microcircuit et application a la cooperation de la carte avec un systeme hote.
FR2653914A1 (fr) * 1989-10-27 1991-05-03 Trt Telecom Radio Electr Systeme d'authentification d'une carte a microcircuit par un micro-ordinateur personnel, et procede pour sa mise en óoeuvre.
JP3029381B2 (ja) * 1994-01-10 2000-04-04 富士通株式会社 データ変換装置
US5787172A (en) * 1994-02-24 1998-07-28 The Merdan Group, Inc. Apparatus and method for establishing a cryptographic link between elements of a system
DE69535935D1 (de) * 1994-02-24 2009-05-28 Comcast Cable Holdings Llc Verfahren und Vorrichtung zur Erstellung einer kryptographischen Verbindung zwischen Elementen eines Systems
US6125182A (en) * 1994-11-09 2000-09-26 Channel One Communications, Inc. Cryptographic engine using logic and base conversions
DE19527186A1 (de) * 1995-07-26 1997-01-30 Philips Patentverwaltung RDS-TMC-Rundfunkempfänger
DE19527185A1 (de) * 1995-07-26 1997-01-30 Philips Patentverwaltung RDS-TMC-Rundfunkempfänger
DE19527183A1 (de) * 1995-07-26 1997-01-30 Philips Patentverwaltung RDS-TMC-Rundfunkempfänger
DE19527188A1 (de) 1995-07-26 1997-01-30 Philips Patentverwaltung RDS-TMC-Rundfunkempfänger
DE19527831A1 (de) * 1995-07-29 1997-01-30 Philips Patentverwaltung RDS-TMC-Rundfunkempfänger
GB2319705B (en) * 1996-11-21 2001-01-24 Motorola Ltd Arrangement for encryption/decryption of data and data carrier incorporating same
US6317832B1 (en) * 1997-02-21 2001-11-13 Mondex International Limited Secure multiple application card system and process
US6575372B1 (en) 1997-02-21 2003-06-10 Mondex International Limited Secure multi-application IC card system having selective loading and deleting capability
US6385723B1 (en) 1997-05-15 2002-05-07 Mondex International Limited Key transformation unit for an IC card
US6164549A (en) * 1997-05-15 2000-12-26 Mondex International Limited IC card with shell feature
US6220510B1 (en) 1997-05-15 2001-04-24 Mondex International Limited Multi-application IC card with delegation feature
US6488211B1 (en) * 1997-05-15 2002-12-03 Mondex International Limited System and method for flexibly loading in IC card
US6328217B1 (en) 1997-05-15 2001-12-11 Mondex International Limited Integrated circuit card with application history list
US6736325B1 (en) 1998-01-22 2004-05-18 Mondex International Limited Codelets
US6357665B1 (en) 1998-01-22 2002-03-19 Mondex International Limited Configuration of IC card
US6742120B1 (en) 1998-02-03 2004-05-25 Mondex International Limited System and method for controlling access to computer code in an IC card
ATE484807T1 (de) 1998-10-23 2010-10-15 Coinstar Inc Verfahren und vorrichtung zum schutz von durch münzprüfer ausgegebenen gutscheinen von verfälschung
US6116402A (en) * 1998-10-23 2000-09-12 Coinstar, Inc. Voucher coding for self-service coin discriminator
US6644696B2 (en) * 1998-10-23 2003-11-11 Coinstar, Inc. Coin-discriminator voucher anti-counterfeiting method and apparatus
DE19908788A1 (de) * 1999-03-01 2000-09-14 Beta Res Gmbh Sicherungssystem für Berechtigungskarten
WO2001089098A2 (en) 2000-05-05 2001-11-22 Lee Ruby B A method and system for performing permutations with bit permutation instructions
US6922472B2 (en) 2000-05-05 2005-07-26 Teleputers, Llc Method and system for performing permutations using permutation instructions based on butterfly networks
US6952478B2 (en) * 2000-05-05 2005-10-04 Teleputers, Llc Method and system for performing permutations using permutation instructions based on modified omega and flip stages
US20020114451A1 (en) * 2000-07-06 2002-08-22 Richard Satterfield Variable width block cipher
DE10047614C2 (de) * 2000-09-26 2003-03-27 Generis Gmbh Vorrichtung zum schichtweisen Aufbau von Modellen
US6700076B2 (en) * 2000-09-28 2004-03-02 Eic Corporation Multi-layer interconnect module and method of interconnection
US7502463B2 (en) * 2000-12-13 2009-03-10 Broadcom Corporation Methods and apparatus for implementing a cryptography engine
US7142671B2 (en) * 2000-12-13 2006-11-28 Broadcom Corporation Methods and apparatus for implementing a cryptography engine
US7366300B2 (en) * 2000-12-13 2008-04-29 Broadcom Corporation Methods and apparatus for implementing a cryptography engine
DE10121867B4 (de) * 2001-05-05 2007-01-25 Hartmann, Jörg, Dipl.-Math. Verfahren zur Kryptographie auf Basis eines neuen Kernes mit Quell-Schlüssel und ausführbarem Schlüssel und je einem Beispiel für ein symmetrisches und ein asymmetrisches kryptisches Verfahren als Oberfläche zu diesem Kern
US7093277B2 (en) * 2001-05-30 2006-08-15 Digeo, Inc. System and method for improved multi-stream multimedia transmission and processing
US7386129B2 (en) * 2001-05-30 2008-06-10 Digeo, Inc. System and method for multimedia content simulcast
US7463737B2 (en) * 2001-08-15 2008-12-09 Digeo, Inc. System and method for conditional access key encryption
US7215769B2 (en) * 2002-11-06 2007-05-08 Fiske Software Llc Non-autonomous dynamical orbit cryptography
US8712942B2 (en) * 2003-03-24 2014-04-29 AEMEA Inc. Active element machine computation
JP2005338942A (ja) * 2004-05-24 2005-12-08 Freescale Semiconductor Inc レジスタユニット
US7657033B2 (en) * 2004-12-10 2010-02-02 Fiske Software Llc Cryptography related to keys
US20100046755A1 (en) * 2005-12-07 2010-02-25 Fiske Software Llc Cryptography related to keys with signature
WO2008054512A2 (en) * 2006-04-19 2008-05-08 Stepnexus Holdings Methods and systems for ic card application loading
US7821453B2 (en) * 2007-12-20 2010-10-26 Sarnoff Corporation Distributed iterative multimodal sensor fusion method for improved collaborative localization and navigation
EP2096884A1 (en) 2008-02-29 2009-09-02 Koninklijke KPN N.V. Telecommunications network and method for time-based network access
US10268843B2 (en) 2011-12-06 2019-04-23 AEMEA Inc. Non-deterministic secure active element machine
US10403173B2 (en) 2013-08-13 2019-09-03 Fiske Software, Llc NADO cryptography using one-way functions

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4259720A (en) * 1978-01-09 1981-03-31 Interbank Card Association Security system for electronic funds transfer system
US4275265A (en) * 1978-10-02 1981-06-23 Wisconsin Alumni Research Foundation Complete substitution permutation enciphering and deciphering circuit
US4274085A (en) * 1979-06-28 1981-06-16 Motorola, Inc. Flexible mode DES system
JPS6178240A (ja) * 1984-09-25 1986-04-21 Nippon Telegr & Teleph Corp <Ntt> Des暗号装置
FR2582174B1 (fr) * 1985-05-15 1990-03-09 Thomson Csf Dispositif de chiffrement par substitutions-permutations

Also Published As

Publication number Publication date
JPS63236074A (ja) 1988-09-30
EP0282123B1 (fr) 1993-10-27
FR2611962A1 (fr) 1988-09-09
KR880011721A (ko) 1988-10-31
DE3885123T2 (de) 1994-05-05
US5001753A (en) 1991-03-19
EP0282123A1 (fr) 1988-09-14
FR2611962B1 (fr) 1989-06-09
DE3885123D1 (de) 1993-12-02

Similar Documents

Publication Publication Date Title
KR960010767B1 (ko) 암호 시스템 및 그 처리 방법
US6615354B1 (en) Information processing equipment
US4751733A (en) Substitution permutation enciphering device
US5825882A (en) Encryption and authentication method and circuit for synchronous smart card
US6408075B1 (en) Information processing equipment and IC card
CN100394348C (zh) 协助处理密码消息的指令
JP4822450B2 (ja) 2つの電子的エンティティ間における暗号プロトコル実行方法
RU96118111A (ru) Система информационного обмена с портативными блоками обработки данных
JPH10511778A (ja) 2つの処理装置の間における秘密鍵による通信プロトコルの実行方法
US6772942B2 (en) Arithmetic circuit to increase the speed of a modular multiplication for a public key system for encryption
US8321691B2 (en) EMA protection of a calculation by an electronic circuit
US20020154767A1 (en) Tamper resistance device
US20060125664A1 (en) Masking of binary words processed by an integrated circuit
JP4863279B2 (ja) メモリシステム及びメモリアクセス方法
US20070220074A1 (en) Sharing of a logic operator having a work register
JP2001265713A (ja) データの安全な転送方法
TW538334B (en) Method and apparatus for modifying a bit field in a memory buffer
EP2920736A1 (en) Method to counter side channel attack on sensitive data
JPS63232539A (ja) コ−ドブツク暗号システム
JPH0766428B2 (ja) Icカードの認証方法
JPS58145980A (ja) 組合せ暗号発生装置
JPS6343754B2 (ko)
JP2021149484A (ja) プログラム及びライセンスキー処理システム
JP4527960B2 (ja) 換字置換装置、換字置換方法、換字置換プログラム及び換字置換記録媒体
GB2612125A (en) Identifier generation

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee