23 lines
790 B
Markdown
23 lines
790 B
Markdown
|
|
# Porta Cipher
|
|
|
|
Encrypts or decrypts a message using the Porta cipher.
|
|
|
|
Source library: `secretpy`
|
|
|
|
## Historical Context
|
|
|
|
The Porta cipher is a polyalphabetic substitution cipher invented by Giovanni Battista della Porta.
|
|
|
|
## How it Works
|
|
|
|
The Porta cipher is a reciprocal cipher, meaning that the encryption and decryption processes are the same. It uses a keyword and a set of rotating alphabets to encrypt the message.
|
|
|
|
## Parameters
|
|
|
|
- **text**: The message to encrypt or decrypt.
|
|
- **alphabet**: The alphabet to use for the cipher. Can be a string of characters or a predefined alphabet from `secretpy.alphabets`.
|
|
- **key**: The key for the cipher.
|
|
- **mode**: Whether to encrypt or decrypt the message.
|
|
- **keep_formatting**: Whether to keep the original formatting of the message.
|