가공데이터 · 특허 지식베이스

데이터 암호화 표준 알고리즘을 이용한 암호화 장치 document_id 1020000032173

출원번호
1020000032173
분류
전기(H섹션)
문맥 (context)
[청구항 1] 데이터 암호화 표준 알고리즘을 이용한 암호화 장치에 있어서, 평문 블록을 바이트 단위로 수신하고, 제1 클럭에 응답하여 제1 및 제2 32비트 평문 블록을 출력하기 위한 입력 버퍼링부 상기 제1 클럭에 따라 상기 입력 버퍼링 수단으로부터 각각 상기 제1 및 제2 32비트 평문 블록을 수신하고, 각각 제 1 및 제 2 보조키를 사용하여 상기 좌우 32비트 평문 블록을 암호화하며, 상기 제 1 클럭에 따라 제1 암호화된 32비트 블록을 출력하고 상기 제1 클럭의 반전된 신호인 제2 클럭에 따라 제2 암호화된 32비트 블록을 출력하기 위한 암호화 함수 연산부 상기 제1 암호화된 32비트 블록과 상기 제2 32비트 평문의 배타적 논리합 연산을 수행하여 제1 암호화 블록을 생성하기 위한 제1 배타적 논리합 연산부 상기 제2 암호화된 32 비트 블록과 상기 제1 32비트 평문의 배타적 논리합 연산을 수행하여 제2 암호화 블록을 생성하기 위한 제2 배타적 논리합 연산부 상기 제1 클럭에 따라 상기 제2 암호화 블록을 저장하고 상기 제2 암호화 블록을 상기 암호화 함수 연산부로 출력하기 위한 좌측 레지스터 상기 제2 클럭에 따라 상기 제1 암호화 블록을 저장하고 상기 제1 암호문 블록을 상기 암호화 함수 연산부로 출력하기 위한 우측 레지스터; 및 상기 제2 클럭에 응답하여 상기 제1 및 제2 32비트 암호문 블록을 수신하고, 상기 제1 및 제2 암호문 블록을 바이트 단위로 출력하기 위한 출력 버퍼링부 를 포함하는 데이터 암호화 장치 [청구항 4] 제1항에 있어서,상기 암호화 함수 연산부는,상기 제1 32비트 평문 블록에 대하여 확장치환을 수행하여 제1 48비트 블록을 생성하기 위한 제 1 확장치환부; 상기 제2 32비트 평문 블록에 대하여 확장치환을 수행하여 제2 48비트 블록을 생성하기 위한 제 2 확장치환부;상기 제1 48비트 블록 및 키 스케쥴러로부터의 상기 제1 보조키 블럭의 배타적 논리합 연산을 수행하여 제1 배타적 논리합 연산된 48 비트 블록을 생성하기 위한 제3 배타적 논리합 연산부;상기 제2 48비트 블록 및 상기 키 스케줄러로부터의 상기 제2 보조키 블럭의 배타적 논리합 연산을 수행하여 제2 배타적 논리합 연산된 48 비트 블록을 생성하기 위한 제4 배타적 논리합 연산부;제어 신호에 따라 상기 제1 및 제2 배타적 논리합 연산된 48 비트 블록중 하나를 선택하여 배타적 논리합 연산된 48 비트 블록을 출력하기 위한 멀티플렉서;상기 멀티플렉서로부터 출력된 상기 배타적 논리합 연산된 48 비트 블록을 수신하여 32 비트 데이터 블록을 출력하기 위한 s-box 치환부;상기 s-box 치환부로부터 출력된 상기 32비트 데이터 블록을 치환하여 치환된 32 비트 블록을 생성하기 위한 p-box 치환부; 및,상기 제어 신호에 따라 상기 치환된 32 비트 블록을 두 개의 출력포트 중 하나로 출력하기 위한 디멀티플렉서포함하는데이터 암호화 장치. [청구항 5] 제4항에 있어서,상기 키스케쥴러는,56비트 키 블록을 수신하여 상기 제1 클럭에 따라 상기 제1 보조키를 생성하기 위한 제1 키 스케쥴링 수단; 및상기 56비트 키 블록을 수신하여 상기 제2 클럭에 따라 상기 제2 보조키를 생성하기 위한 제2 키 스케쥴링 수단포함하는데이터 암호화 장치. [청구항 6] 제5항에 있어서,상기 제1 키스케쥴링 수단은,상기 56비트 블록을 치환하기 위한 제1 치환 선택부;상기 제1 치환선택부로부터의 상기 56비트 블록 중 좌측 28비트를 저장하기 위한 제1 레지스터;상기 제1 치환선택부로부터의 상기 56비트 블록 중 우측 28비트를 저장하기 위한 제2 레지스터;상기 제1 및 제2 레지스터에 저장된 28비트들을 각각 소정의 비트수만큼 쉬프트시키기 위한 두 개의 쉬프트부; 및상기 제1 및 제2 레지스터에 저장된 상기 28비트들을 치환하여 상기 제1 보조키를 생성하기 위한 제2 치환선택부포함하는데이터 암호화 장치. [청구항 7] 제6항에 있어서,상기 제2 키스케쥴링 수단은,상기 56비트 블록을 치환하기 위한 제3 치환 선택부;상기 제3 치환선택부로부터의 상기 56비트 블록 중 좌측 28비트를 저장하기 위한 제3 레지스터;상기 제3 치환선택부로부터의 상기 56비트 블록 중 우측 28비트를 저장하기 위한 제4 레지스터;상기 제3 및 제4 레지스터에 저장된 28비트들을 각각 소정의 비트수만큼 쉬프트시키기 위한 두 개의 쉬프트부; 및상기 제3 및 제4 레지스터에 저장된 상기 28비트들을 치환하여 상기 제1 보조키를 생성하기 위한 제4 치환선택부포함하는데이터 암호화 장치.
지시문 (instruction)
주어진 본문을 읽고 관련 정보를 분석하여 질문에 답하라.
질문 (question)
데이터 암호화 장치에서 암호화 함수 연산부가 제1 및 제2 48비트 블록을 생성한 후, 최종적으로 32비트 데이터 블록을 출력하기 위해 거치는 세부 구성 요소들의 순차적인 처리 과정을 설명하는가?
추론 과정 (compact_reasoning)
  1. 1과제 해석task_interpretation

    암호화 함수 연산부 내에서 제1 및 제2 48비트 블록이 생성된 이후, 최종 32비트 데이터 블록이 출력되기까지의 구성 요소별 순차적 처리 과정을 파악해야 한다.

  2. 2정보 추출information_extraction

    청구항 4를 통해 48비트 블록 생성 이후의 구성 요소인 멀티플렉서, s-box 치환부, p-box 치환부, 디멀티플렉서를 추출한다.

    • 제1 및 제2 배타적 논리합 연산된 48 비트 블록중 하나를 선택하여 배타적 논리합 연산된 48 비트 블록을 출력하기 위한 멀티플렉서;상기 멀티플렉서로부터 출력된 상기 배타적 논리합 연산된 48 비트 블록을 수신하여 32 비트 데이터 블록을 출력하기 위한 s-box 치환부;상기 s-box 치환부로부터 출력된 상기 32비트 데이터 블록을 치환하여 치환된 32 비트 블록을 생성하기 위한 p-box 치환부; 및,상기 제어 신호에 따라 상기 치환된 32 비트 블록을 두 개의 출력포트 중 하나로 출력하기 위한 디멀티플렉서
  3. 3근거 선택evidence_selection

    48비트 블록 출력 이후의 단계인 멀티플렉서 -> s-box 치환부 -> p-box 치환부 -> 디멀티플렉서 순의 문맥을 선택한다.

    • 제1 및 제2 배타적 논리합 연산된 48 비트 블록중 하나를 선택하여 배타적 논리합 연산된 48 비트 블록을 출력하기 위한 멀티플렉서;상기 멀티플렉서로부터 출력된 상기 배타적 논리합 연산된 48 비트 블록을 수신하여 32 비트 데이터 블록을 출력하기 위한 s-box 치환부;상기 s-box 치환부로부터 출력된 상기 32비트 데이터 블록을 치환하여 치환된 32 비트 블록을 생성하기 위한 p-box 치환부; 및,상기 제어 신호에 따라 상기 치환된 32 비트 블록을 두 개의 출력포트 중 하나로 출력하기 위한 디멀티플렉서
  4. 4논리 통합logical_integration

    멀티플렉서가 48비트 블록 중 하나를 선택하면, s-box 치환부가 이를 32비트 데이터 블록으로 변환하고, p-box 치환부가 이를 다시 치환하며, 마지막으로 디멀티플렉서가 출력포트로 내보내는 흐름을 구성한다.

  5. 5결론 도출conclusion_formulation

    질문에서 요구한 '최종적으로 32비트 데이터 블록을 출력하기 위해 거치는 과정'에 맞춰 순차적 단계를 정리한다.

  6. 6답변 생성answer_generation

    추출된 정보를 바탕으로 절차적 답변을 작성한다.

최종 답변 (final_answer)
암호화 함수 연산부에서 제1 및 제2 48비트 블록이 생성된 후, 최종 32비트 데이터 블록 출력을 위한 처리 과정은 다음과 같다. 먼저, 멀티플렉서가 제1 및 제2 배타적 논리합 연산된 48비트 블록 중 하나를 선택하여 출력한다. 이후, s-box 치환부가 선택된 48비트 블록을 수신하여 32비트 데이터 블록을 출력한다. 이어서 p-box 치환부가 s-box 치환부로부터 출력된 32비트 데이터 블록을 치환하여 치환된 32비트 블록을 생성하며, 마지막으로 디멀티플렉서가 제어 신호에 따라 이 치환된 32비트 블록을 두 개의 출력포트 중 하나로 출력한다.
핵심 해석 (core_interpretation)
본 발명은 암호화 함수 연산부 내에서 멀티플렉서, s-box 치환부, p-box 치환부 및 디멀티플렉서를 순차적으로 배치하여, 48비트 블록을 선택하고 32비트 데이터 블록으로 변환 및 치환하여 출력하는 데이터 암호화 처리 과정을 제공한다.