SEED 편집하기

이동: 둘러보기, 검색

경고: 로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다. 로그인하거나 계정을 생성하면 편집자가 아이디(ID)으로 기록되고, 다른 장점도 있습니다.

편집을 되돌릴 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 저장해주세요.
최신판 당신의 편집
46번째 줄: 46번째 줄:
 
SEED의 라운드 키를 생성하는 과정은 우선 128비트 암호키를 64비트씩 좌우로 나누어서 이들을 8비트씩 교대로 좌우로 회전이동한다. 그 후, 결과의 4워드들에 대해 간단한 산술 연산과 G 함수를 적용해서 라운드 키를 생성한다. 라운드 키 생성 과정은 기본적으로 하드웨어나 제한된 자원을 가지는 스마트카드 같은 곳에서 효율적으로 응용할 수 있도록 만들기 위해, 암호화나 복호화를 진행할 때 암호키에서 필요한 라운드 키를 간단하게 계산할 수 있도록 설계되었다.  
 
SEED의 라운드 키를 생성하는 과정은 우선 128비트 암호키를 64비트씩 좌우로 나누어서 이들을 8비트씩 교대로 좌우로 회전이동한다. 그 후, 결과의 4워드들에 대해 간단한 산술 연산과 G 함수를 적용해서 라운드 키를 생성한다. 라운드 키 생성 과정은 기본적으로 하드웨어나 제한된 자원을 가지는 스마트카드 같은 곳에서 효율적으로 응용할 수 있도록 만들기 위해, 암호화나 복호화를 진행할 때 암호키에서 필요한 라운드 키를 간단하게 계산할 수 있도록 설계되었다.  
  
주어진 128비트 암호키가 K=A||B||C||D일 때, 해당 암호키를 32비트 레지스터인 A, B, C, D로 나눈다. 각 라운드 i 에 사용되는 키 K_i=(K_{i,0}:K_{i,1})는 다음과 같은 방식으로 생성한다.<ref>한국인터넷진흥원, 〈[SEED 128 알고리즘 상세 명세서]〉, 《한국인터넷진흥원》, 2009-07</ref>
+
주어진 128비트 암호키가 K=A||B||C||D일 때, 해당 암호키를 32비트 레지스터인 A, B, C, D로 나눈다. 각 라운드 i 에 사용되는 키 K_i=(K_{i,0}:K_{i,1})는 다음과 같은 방식으로 생성한다.  
  
 
  <math> for(i=1; i<=16; i++)</math>{
 
  <math> for(i=1; i<=16; i++)</math>{

해시넷에서의 모든 기여는 다른 기여자가 편집, 수정, 삭제할 수 있다는 점을 유의해 주세요. 만약 여기에 동의하지 않는다면, 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다 (자세한 사항은 해시넷:저작권 문서를 보세요). 저작권이 있는 내용을 허가 없이 저장하지 마세요!

취소 | 편집 도움말 (새 창에서 열림)