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: 2344|Respuesta: 3

[Fuente] Cifrar el backend usando el algoritmo RSA (. NET) descifrado

[Copiar enlace]
Publicado el 6-9-2024 08:44:03 | | | |
Requisitos: La contraseña original del usuario en el proyecto debe ser pasada al backend, porque el backend debe llamar a una interfaz de terceros con la contraseña. Si la contraseña no se transmite bien en texto plano, si la captura la herramienta de captura de paquetes, la contraseña se filtrará. Finalmente se adoptó el algoritmo RSA, con el frontend cifrando la contraseña usando la clave pública y el backend usando la clave privada para descifrarla.

El frontend utiliza el paquete jsencrypt, address:El inicio de sesión del hipervínculo es visible.

Si el backend es .NET 5 o superior, puedes usar las funciones integradas; si no, utiliza los siguientes parámetros:

Cifrado y desencriptado en formato RSA PEM .NET/C#
https://www.itsvse.com/thread-10602-1-1.html

Primero, utiliza openssl para generar claves públicas y privadas; este artículo se ejecuta directamente en Linux (por favor descarga e instala openssl en el sistema Windows), el comando es el siguiente:



cat rsa_1024_priv.pem
-----INICIA LA CLAVE PRIVADA DE RSA-----
MIICXAIBAAKBgQDTyd/KP2JuidA0JA+7i8FCzKCdn2Gq/ChfLpnBFcHb9vKgZb6n
aK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQuNpop/FO9doiV5l/94Hcuj17f
2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH7VpuQyJRGHzWQu8HnwIDAQAB
AoGARat4Ifkd8U0Gn9BpGIIN7mKQR6nhoDTZNw6GZ903a5veDuPJhxrJVzDDAcuc
3znyxxy0qJzF9ZHkrvyBDwsv7AGyVfg6fwwLxvrsJS1MpwKLY3yqbPVk3hnaOECO
915XcbkVua+DGVjwtyX37CxPuSDaH2ut+kIQ3xci+BreSpkCQQD3FfgYELZgrHDk
JQaSiILCnFbld+NBuTm4CHPCN+XDZwzvC8sH4M9my7kznxAQosHbm+aGaOK1k4+k
zKgaiJzVAkEA223oSa7UMyMf/K/dEFmGjKBWQYP7gjLxcsxDHdwTpKHBEuZ32IT2
nuvYxsaOATqg8WABAJHWmT2Rj/joeAx8owJBANaLovLygAoNcbEIXV6bXj8xlVqG
8TO+a9narPk1pDI5psdijBb5I930g4nJUh+/02inRFHtfP2Bdbb5ZfY0LUkCQDxJ
iCamaBrcra8pSl1xm2wLqWc6seFlyby2rkIH80WqQ3fD5m2QqomjVt3WM7HWv91R
eTUE3KchqVqbEpPZKm0CQD7VMRAb1NNH+BNjuGxZB3AQSJvRXhpJ+w3ckSP6IX0L
N0OoHtvH5lvtm7hfB5nDUBYhqN3wj7wDNiK9Vrdyqow=
-----FIN DE LA CLAVE PRIVADA RSA-----
cat rsa_1024_pub.pem
-----INICIAR CLAVE PÚBLICA-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDTyd/KP2JuidA0JA+7i8FCzKCd
n2Gq/ChfLpnBFcHb9vKgZb6naK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQu
Npop/FO9doiV5l/94Hcuj17f2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH
7VpuQyJRGHzWQu8HnwIDAQAB
-----FIN CLAVE PÚBLICA-----

Crea una nueva página web index.html con el siguiente código fuente:

Turistas, si queréis ver el contenido oculto de esta publicación, por favorRespuesta


Crea una nueva aplicación de consola .NET 8 con el siguiente código fuente:


Abre la página web index.html usando un navegador, prueba el cifrado y utiliza la aplicación .NET para descifrarlo, como se muestra en la siguiente figura:



Nota: Tanto el cifrado como el descifrado de cadenas muy largas fallarán, y se requiere cifrado y desencriptado segmentados. Para detalles específicos, puedes consultar:El inicio de sesión del hipervínculo es visible.

(Fin)




Anterior:Docker analiza la última versión específica (correspondiente) de la imagen
Próximo:Jenkins (7) Servidor Linux compila Jenkins versión 2.462.1
 Propietario| Publicado el 14-10-2024 15:51:48 |
Generar claves públicas y privadas de longitud 2048

 Propietario| Publicado el 14-10-2024 17:10:13 |
Otra biblioteca de cifrado y descifrado RSA en la interfaz frontal, node-forge, es una implementación completamente nativa del protocolo TLS en JavaScript, un conjunto de utilidades criptográficas y un conjunto de herramientas para desarrollar aplicaciones web que aprovechan grandes cantidades de recursos de red.

https://www.npmjs.com/package/node-forge

Ya se usan en Angular, se instalan con npm de la siguiente manera:

El código del frontend es el siguiente:

Código backend .NET:



 Propietario| Publicado el 16-10-2024 08:23:58 |
RSA cifra el tamaño máximo de datos
El inicio de sesión del hipervínculo es visible.


En el algoritmo de cifrado RSA, el tamaño máximo del bloque a codificar depende de la longitud de clave elegida. En general, las claves RSA pueden tener una longitud de 1024 bits, 2048 bits o 4096 bits.

Para una clave de 1024 bits, el tamaño máximo del bloque es de 117 bytes. Esto significa que, al usar una clave de 1024 bits, el bloque máximo de datos que puedes cifrar es de 117 bytes.

Para claves de 2048 bits, el tamaño máximo del bloque es de 245 bytes. Esto significa que, al usar una clave de 2048 bits, el bloque máximo de datos que puedes cifrar es de 245 bytes.

Para claves de 4096 bits, el tamaño máximo del bloque es de 512 bytes. Esto significa que, al usar una clave de 4096 bits, el bloque máximo de datos que puedes cifrar es de 512 bytes.

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