RSA
Source code in rsa/core/RSA.py
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | |
__generate_private_exp(phi, public_exp)
Método privado para calcular o valor do expoente privado.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
phi |
int
|
O valor do Totiente de Euler para 'n' |
required |
public_exp |
int
|
O expoente público |
required |
Returns:
| Type | Description |
|---|---|
int
|
O valor do expoente privado |
Source code in rsa/core/RSA.py
18 19 20 21 22 23 24 25 26 27 28 29 30 31 | |
cript(public_key, msg)
Método utilizado para realizar a cifração de uma mensagem
Attributes:
| Name | Type | Description |
|---|---|---|
public_key |
str
|
Uma string hexadecimal com a chave codificada em DER |
msg |
str
|
A mensagem que se deseja cifrar |
Returns:
| Type | Description |
|---|---|
int
|
O Criptograma resultante da cifração |
Source code in rsa/core/RSA.py
107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 | |
dcript(private_key, criptogram)
Método utilizado para realizar a decifração de um criptograma
Attributes:
| Name | Type | Description |
|---|---|---|
private_key |
str
|
Uma string hexadecimal com a chave codificada em DER |
criptogram |
int
|
O Criptograma que se deseja decifrar |
Returns:
| Type | Description |
|---|---|
str
|
O texto plano |
Source code in rsa/core/RSA.py
135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 | |
der_private_key(private_infos)
Método estático utilizado para converter as informações da chave privada para o formato DER
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
private_infos |
Dict[str, int]
|
Um dicionário com as informações da chave privada |
required |
Returns:
| Type | Description |
|---|---|
str
|
Um hexadecimal com a chave codificada com DER |
Source code in rsa/core/RSA.py
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | |
der_public_key(public_infos)
Método estático utilizado para converter as informações da chave pública par o formato DER
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
public_infos |
Dict[str, int]
|
Um dicionário com as informações da chave pública |
required |
Returns:
| Type | Description |
|---|---|
str
|
Um hexadecimal com a chave codificada com DER |
Source code in rsa/core/RSA.py
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | |
generate_keys(public_exp=65537)
Método utilizado para gerar as chaves pública e privada do RSA.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
public_exp |
int
|
O valor para o expoente público |
65537
|
Returns:
| Type | Description |
|---|---|
Tuple[str, str]
|
Tuple[str, str]: Os pares de chaves pública e privada, codificadas em hexadecimal. |
Source code in rsa/core/RSA.py
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 | |