메인 컨텐츠로 가기

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

developerWorks에 처음 로그인하면 developerWorks프로파일이 생성됩니다.귀하의 프로파일에서 동의하신 내용이 공개되지만 이 사항은 언제든지 변경 가능합니다. 귀하의 성명(숨김으로 체크되어 있어도 표시됩니다)과 디스플레이 이름은 게시한 컨텐츠나 사이트 엑세스시 표시됩니다.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

처음 developerWorks에 로그인할 때 프로파일이 작성되므로, 이를 위해 디스플레이 이름을 선택해야 합니다. 선택하신 디스플레이 이름은 developerWorks에 게시한 컨텐츠에 표시됩니다.

3글자 이상 31글자 이하의 길이로 사용 가능합니다. dW커뮤니티 내에서는 보안상 이메일주소를 제외한 다른 이름을 지정하셔야 합니다.

developerWorks 이용 약관에 동의하시는 경우 제출을 클릭하십시오. 이용 약관 보기.

모든 정보가 안전하게 전송되었습니다.

  • 닫기 [x]

Canonical XML (c14n)

플레인 텍스트 비교와 디지털 서명을 위한 XML

필자:  W3C

요약:  Canonical XML은 의미를 변경하지 않고 XML 신택스의 변화를 허용한다. 무엇보다도 테스팅과 디지털 서명에 유용하게 사용될 이 표준 메소드에 대해 알아보자.

원문 게재일:  2007 년 6 월 05 일
난이도:  중급 원문:  보기
페이지뷰: 1173 회
의견: 

Canonical XML은 의미를 변경하지 않고 XML 신택스의 변화를 허용한다. 무엇보다도 테스팅과 디지털 서명에 유용하게 사용될 이 표준 메소드에 대해 알아보자.

Canonical XML Version 1.0 [W3C Recommendation]은 canonical form이라고 하는 XML 문서의 물리적 표현법을 만드는 표준 방식으로서, 의미를 변경하지 않고 XML 신택스에서 허용되는 다양한 변화들을 다루고 있다. 예를 들어, 애트리뷰트의 정렬 방식만 다른 두 문서가 있다고 가정하자. 비록 물리적인 표현상의 차이는 있을 수 있겠지만, XML에서 애트리뷰트 순서는 중요하지 않기 때문에, 이 두 문서들은 XML 1.0 표준에 의거하여 동일한 것으로 간주될 것이다. 이는 몇 가지 실질적인 문제들을 만들어 낸다. 예를 들어, 디지털로 암호화된 서명을 통해 문서 훼손을 방지한다고 가정해 보자. 애트리뷰트를 재 조정하면 서명이 깨질 수 있다. 물론 XML 표준에 의거하여 문서는 실제로 변하지는 않는다. 해결책은 서명, 텍스트 비교, 기타 연산을 수행하기 전에 문서들을 표준 폼으로 변환("canonicalization (c14n)")하는 것이다. 이로써 XML에서 변경 사항들이 올바르게 수용될 수 있도록 한다. 현재 Canonical XML 1.1 이 개발 중이고, 여기에서는 1.0 스팩이 가진 여러 중요한 문제들을 다루고 있다.

가끔은, 비교 또는 서명되어야 하는 XML은 하나의 큰 문서의 일부분일 경우가 있다. c14n은 네임스페이스 선언 같은 상세한 부분을 다룰 때 조차도 전체 소스 문서를 끄집어내야 한다. c14n이 문서 서브셋으로 엄격히 제한되어야 한다면 관련 알고리즘 Exclusive XML Canonicalization Version 1.0 [W3C Recommendation]을 사용해야 한다.


참고자료

의견



static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=20
Zone=XML
ArticleID=238820
SummaryTitle=Canonical XML (c14n)
publish-date=06052007