Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 8008|Respuesta: 6

[Fuente] [Combate real] State Secret 4 (SM4) usa .NET y Java para descifrarse mutuamente

[Copiar enlace]
Publicado en 12/9/2022 22:26:24 | | | |
Requisitos: Debido a la necesidad de conectarse con un tercero en el proyecto amigo, los datos se cifran usando el algoritmo National Secret 4 (SM4) durante la transmisión, y ambas partes deben cifrar y descifrar los datos.

SM4.0 (anteriormente conocido como SMS4.0) es un estándar de criptografía por bloques adoptado por el gobierno de la República Popular China, publicado por la Administración Estatal de Criptografía el 21 de marzo de 2012. El estándar relevante es "GM/T 0002-2012 "SM4 Block Cipher Algorithm" (anteriormente SMS4 Block Cipher Algorithm)".

Algoritmo de criptografía de bloques SM4 en Tecnología de Seguridad de la Información:El inicio de sesión del hipervínculo es visible.

Proyectos Java

Se ha creado un nuevo proyecto maven, y se ha introducido la herramienta hutool, usando el algoritmo SM4 encapsulado en hutool, y el archivo pom se presenta de la siguiente manera:

Documentación:El inicio de sesión del hipervínculo es visible.

Proyecto .NET

El proyecto .NET necesita ser introducido en mi encapsulaciónSueciaChinaEncriptaSMLos paquetes que soportan proyectos .NET Framework y .NET Core utilizan el comando nuget de la siguiente manera:


Dirección:El inicio de sesión del hipervínculo es visible.

Prueba los resultados de cifrado de .NET y Java

Código .NET:

Código Java:

Puedes ver que en el caso de la misma clave y iv,El resultado es el mismo tras el cifrado, como se muestra en la figura siguiente:



Cifrado y descifrado de .NET y descifrado en Java

Aquí hay una omisión del código que utiliza Java para cifrar el cifrado de .NET, y puedes extraer inferencias de un ejemplo.

Código .NET:

Código Java:

Como se muestra a continuación:

El resultado del cifrado es el siguiente:
rG50B+Ah6k0FqvvKItc2TDJnt9HcDIG9OyjBqkiiAlI=
Los resultados del descifrado son los siguientes:
Prueba a la escoria pequeña itsvse.com



(Fin)




Anterior:Aprende a crear y lanzar paquetes de NuGet en 3 minutos
Próximo:Extrae los archivos del paquete de instalación de .msi descomprimido
Publicado en 12/9/2022 23:19:18 |
Aprende a aprender
Publicado en 19/9/2022 9:39:02 |
Aprende el JAVA.NET del intercambio secreto nacional
Publicado en 24/9/2022 9:29:33 |

Aprende el JAVA.NET del intercambio secreto nacional
Publicado en 18/10/2022 19:31:37 |
Justo a tiempo, échale un vistazo
Publicado en 4/1/2023 17:37:20 |

¡Justo a tiempo, échale un vistazo! ~~~~~
 Propietario| Publicado en 9/6/2023 20:09:39 |
El algoritmo SM4 genera aleatoriamente claves e IVs SM4, y actualmente solo soporta 128 bits (es decir, 16 bytes de clave).


El código C# se ve así:



Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com