Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 다른테이블에속해있습니다
- 안드로이드
- 자바스크립트for문
- 파이썬
- 이행은이미다른
- 자바스크립트수학
- Android
- 사례관리
- cmd명령어
- 청소년복지론
- R데이터분석
- PostgreSQL
- 오류종류
- 장고프로젝트
- Python
- 장고웹프로젝트
- speechtoText
- 자바스크립트forinforof차이
- 이행은이미다른테이블에속해있습니다
- 개발
- webkitrecognition
- speechAPI
- 자바스크립트날짜get
- javaScriptError
- forof문
- 장고
- sqlite
- 장고웹
- 자바스크립트날짜형식
- 자바스크립트날짜
Archives
- Today
- Total
EMDI는 지금도 개발중
C# : SignedXml을 이용한 ds:Signature만드는 방법 본문
1. signedXml의 설명
ds:Signature을 만드려면 우선 signedXml 클래스를 참조해야합니다.
Namespace:System.Security.Cryptography.Xml
Assembly:System.Security.dll
만약 생성자가 계속 생성되지 않는다면 위의 어셈블리와 네임스페이스를 적용했는지 확인해주세요.
2. 예제코드 참고
<Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
<Reference URI="">
<Transforms>
<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
<DigestValue>Base64EncodedValue==</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>AnotherBase64EncodedValue===</SignatureValue>
</Signature>
하지만 여기서 우리가 원하는것은 <Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
이렇게 나오는것이 아닌 <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> 이렇게 나오길 원합니다.
근데 다른 블로그분이 정리한 내용을 읽어보니 서명작업은 대상 데이터를 입력으로 삼는 것이지 대상 데이터를 서명한 것을 포함한 그걸 또 서명하는 것이 아니기에 XML 데이터를 서명하는 경우 대상 XML 데이터를 정규화한 후 그것을 서명해서 덧붙이는 것이라고 합니다. 결론은 대상 XML 데이터만 바꾸지 않으면 서명으로 포함되는 정보 <Signature />는 적법한 XML이기만 하면 된다고 합니다.
3. Xml표현식으로 변경
XmlElement xmlDigitalSignature = signedXml.GetXml();
xmlDigitalSignature.Prefix = "ds";
4. 참고링크
'언어 > C#' 카테고리의 다른 글
C# : DBConnection 이용해서 SQLite 연결 및 쿼리 실행 (0) | 2020.03.31 |
---|---|
C# : 데이터베이스 연결 및 MS-SQL 쿼리 쓰기 (0) | 2020.03.31 |
C# : 폴더생성 및 폴더유무 체크 DirectoryInfo (0) | 2020.03.27 |
C# : txt파일 생성하는 방법 + txt파일 유무 체크 (0) | 2020.03.27 |
C# : XmlDocument 사용해서 XML 생성 (0) | 2020.03.27 |
Comments