ATOMIC AI CRYPTOGRAPHY SPEC RULE: This document defines the complete and binding cryptography system of the Atomic language. RULE: All rules defined here are mandatory. RULE: No cryptographic behavior exists outside this specification. RULE: The cryptography system is didactic in nature and not intended for real-world security. GENERAL MODEL RULE: Cryptographic operations in Atomic are performed exclusively through functions. RULE: All cryptographic functions that return a value start with the keyword "ottieni". RULE: Cryptographic functions must be used only through variable assignment. RULE: Cryptographic functions cannot be nested inside arguments of other functions. RULE: Cryptographic functions operate on text values. SUPPORTED OPERATIONS RULE: Atomic provides two cryptographic operations: text encryption text decryption RULE: Encryption and decryption are symmetric with respect to the selected cipher. CRYPTOGRAPHY FUNCTIONS nome_variabile = ottieni testo cifrato --> (TESTO:" ") (CIFRARIO: "Cesare"|"Atbash"|"Sostituzione a sequenza"|"Parola chiave"|"Vigenere"|"Vernam") (CHIAVE:) nome_variabile = ottieni testo decifrato --> (TESTO:" ") (CIFRARIO: "Cesare"|"Atbash"|"Sostituzione a sequenza"|"Parola chiave"|"Vigenere"|"Vernam") (CHIAVE:) ENCRYPTION FUNCTION RULE: Text encryption is performed using: ottieni testo cifrato --> (CIFRARIO:) (CHIAVE:) (TESTO:) RULE: The function returns a text value. RULE: The returned value must be stored in a variable. DECRYPTION FUNCTION RULE: Text decryption is performed using: ottieni testo decifrato --> (CIFRARIO:) (CHIAVE:) (TESTO:) RULE: The function returns a text value. RULE: The returned value must be stored in a variable. CIPHERS RULE: The CIFRARIO argument specifies the cipher to be used. RULE: CIFRARIO is a text value. RULE: The following cipher names are supported: "Cesare" "Atbash" "Sostituzione a sequenza" "Parola chiave" "Vigenere" "Vernam" RULE: Cipher names must match exactly. RULE: No other cipher names exist. KEY ARGUMENT RULE: The CHIAVE argument specifies the encryption key. RULE: The type of CHIAVE depends on the selected cipher. RULE: CHIAVE may be: a number a text value RULE: The interpretation of CHIAVE is cipher-specific. RULE: CHIAVE does not change during execution unless explicitly reassigned. KEY TYPE "Cesare" - number (1-26) "Atbash" - no key required "Sostituzione a sequenza" - string (alphabet in random order) "Parola chiave" - string "Vigenere" - string "Vernam" - no key required (string automatically generated by the software) TEXT ARGUMENT RULE: The TESTO argument specifies the input text. RULE: TESTO must be a text value. RULE: TESTO may be: a string literal a variable containing text a text interface value GENERAL ARGUMENT RULES RULE: Arguments may be specified in any order. RULE: Arguments must not be repeated. RULE: Arguments use default values when omitted, if defined. RULE: Argument values must be: constants variables text literals numeric expressions FORBIDDEN: function calls inside arguments CHARACTER HANDLING RULE: Cryptographic functions operate character by character. RULE: The exact character set handling is implementation-defined. RULE: Unsupported characters are preserved as-is. RULE: Case sensitivity is preserved. DESIGN PRINCIPLES RULE: The cryptography system is designed for: educational purposes experimentation integration with interfaces RULE: The system prioritizes simplicity and clarity over security strength. FORMAL CLOSURE RULE: The cryptography system of Atomic is limited to what is defined in this document. RULE: Any undocumented cryptographic behavior: is invalid is not part of the Atomic language