이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 8008|회답: 6

[출처] [실제 전투] State Secret 4 (SM4)는 .NET과 Java를 사용해 서로를 복호화합니다

[링크 복사]
게시됨 2022. 9. 12. 오후 10:26:24 | | | |
요구사항: 친구 프로젝트에서 제3자와 연결해야 하기 때문에, 전송 시 데이터는 국가 비밀 4(SM4) 알고리즘으로 암호화되며, 양측 모두 데이터를 암호화하고 복호화해야 합니다.

SM4.0(이전 명칭: SMS4.0)은 중화인민공화국 정부가 채택한 블록 암호 표준으로, 2012년 3월 21일 국가 암호국에 의해 발표되었습니다. 관련 표준은 "GM/T 0002-2012 "SM4 블록 암호 알고리즘"(이전 명칭: SMS4 블록 암호 알고리즘)입니다.

정보보안 기술 SM4 블록 암호화 알고리즘:하이퍼링크 로그인이 보입니다.

자바 프로젝트

새로운 maven 프로젝트가 만들어졌고, hutool 도구가 도입되었으며, hutool에 캡슐화된 SM4 알고리즘을 사용해 pom 파일이 다음과 같이 소개되었습니다:

문서조사:하이퍼링크 로그인이 보입니다.

.NET 프로젝트

.NET 프로젝트는 캡슐화에 도입되어야 합니다Sw.ChinaEncryptSM.NET Framework 및 .NET Core 프로젝트를 지원하는 패키지는 다음과 같이 nuget 명령을 사용합니다:


주소:하이퍼링크 로그인이 보입니다.

.NET 및 Java 암호화 결과를 테스트해 보세요

.NET 코드:

자바 코드:

같은 키와 iv의 경우,암호화 후에는 결과가 동일합니다, 아래 그림에서 볼 수 있습니다:



.NET 암호화 및 복호화 및 자바 복호화

여기에는 자바를 사용해 .NET 암호화를 암호화하는 코드가 빠져 있는데, 한 예시에서 추론할 수 있습니다.

.NET 코드:

자바 코드:

아래에 나와 있습니다:

암호화 결과는 다음과 같습니다:
rG50B+Ah6k0FqvvKItc2TDJnt9HcDIG9OyjBqkiiAlI=
복호화 결과는 다음과 같습니다:
작은 쓰레기 itsvse.com



(끝)




이전의:3분 만에 NuGet 패키지를 만들고 배포하는 법을 배우세요
다음:압축되지 않은 .msi 설치 패키지에서 파일을 추출하세요
게시됨 2022. 9. 12. 오후 11:19:18 |
배우기 위해 배우세요
게시됨 2022. 9. 19. 오전 9:39:02 |
국가 비밀 교환의 JAVA.NET 배우기
게시됨 2022. 9. 24. 오전 9:29:33 |

국가 비밀 교환의 JAVA.NET 배우기
게시됨 2022. 10. 18. 오후 7:31:37 |
딱 맞게 한번 보세요
게시됨 2023. 1. 4. 오후 5:37:20 |

딱 맞게 한번 봐! ~~~~~
 집주인| 게시됨 2023. 6. 9. 오후 8:09:39 |
SM4 알고리즘은 무작위로 SM4 키와 IV를 생성하며, 현재 128비트(즉, 16바이트의 키)만 지원합니다.


C# 코드는 다음과 같습니다:



면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com