Cómo utilizar el módulo y el exponente para el cifrado RSA en iOS
Primero confirme el tamaño de los datos que desea cifrar. Si son relativamente grandes, se recomienda utilizar primero un algoritmo simétrico para el cifrado y luego utilizar RSA para cifrar la clave del algoritmo simétrico.
Ahora define:
El módulo de la clave pública que obtienes es N y el exponente es E
La longitud de bits de N es len(N) < /p >
El número de bytes ocupados por N es k = (len(N)+7)/8
Los datos a cifrar son D (pueden ser sus datos originales o la clave del algoritmo simétrico )
Si sus datos cifrados son relativamente pequeños, también puede realizar el cifrado RSA directamente. Pequeño significa: la longitud de los datos cifrados debe poder cumplir con las condiciones de llenado si el método de llenado PKCS1_1.5 es. usado, D ocupa Los bytes deben ser menores que k-11
El proceso de operación es muy simple: llene D hasta D1, y el número de bytes ocupados por D1 debe ser k (es decir, el misma longitud que N)
El proceso de cálculo del texto cifrado E es DE = (D1 ^ E) % N (^ significa operación exponencial)
Se recomienda utilizar algunos ya preparados. Bibliotecas creadas para implementar en el programa. Si tiene OpenSSL, puede buscar en línea. Eche un vistazo, debería haber mucha información.
Si no, puede introducir directamente algunas bibliotecas de cálculo de gran número para realizar operaciones modulares directamente (no las separe, es demasiado lento).