mirror of
https://github.com/kristoferssolo/rfc-sula-alus.git
synced 2025-10-21 19:50:36 +00:00
Initial commit
This commit is contained in:
commit
345c3ed575
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
/target
|
||||||
93
README.md
Normal file
93
README.md
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
Network Working Group []{.box} T. Developer\
|
||||||
|
Internet Engineering Task Force (IETF) []{.box} (Your Organization)\
|
||||||
|
Request for Comments: XXXX []{.box} (Your Email)\
|
||||||
|
Category: Informational []{.box} (Today's Date)
|
||||||
|
|
||||||
|
[RFC SULA-ALUS: A REVERSAL ENCRYPTION ALGORITHM]{align="center"}
|
||||||
|
|
||||||
|
# Status of This Memo
|
||||||
|
|
||||||
|
This memo provides information for the Internet community. It does not
|
||||||
|
specify an Internet standard of any kind. Distribution of this memo is
|
||||||
|
unlimited.
|
||||||
|
|
||||||
|
# Abstract
|
||||||
|
|
||||||
|
This document describes the SULA-ALUS encryption algorithm---a
|
||||||
|
lightweight, reversible transformation whose principal operation is to
|
||||||
|
reverse the input plaintext. The algorithm's name pays homage to the
|
||||||
|
Latvian wordplay where reversing "sula" gives "alus." Although trivial
|
||||||
|
in its operation, this algorithm may serve educational, demonstrative,
|
||||||
|
or low-risk obfuscation purposes.
|
||||||
|
|
||||||
|
# Introduction
|
||||||
|
|
||||||
|
The SULA-ALUS algorithm is founded on a straightforward principle:
|
||||||
|
encryption is performed by reversing the order of characters (or bytes)
|
||||||
|
of the input data. While the transformation is simple and not intended
|
||||||
|
for modern security-critical applications, it can be useful in contexts
|
||||||
|
where a reversible obfuscation method is acceptable or for educational
|
||||||
|
purposes.
|
||||||
|
|
||||||
|
# Conventions Used in This Document
|
||||||
|
|
||||||
|
The key words "MUST," "SHOULD," and "MAY" are to be interpreted as
|
||||||
|
described in RFC 2119 [@rfc-2119].
|
||||||
|
|
||||||
|
# The Reversal Encryption Algorithm
|
||||||
|
|
||||||
|
The core idea behind SULA-ALUS is that the encryption operation is
|
||||||
|
identical to the decryption operation -- they both consist of reversing
|
||||||
|
the input sequence.
|
||||||
|
|
||||||
|
## Encryption Process
|
||||||
|
|
||||||
|
Let $P$ represent the plaintext composed of a sequence of characters:
|
||||||
|
$$P = p_{1},p_{2},\ldots,p_{n}$$
|
||||||
|
|
||||||
|
The ciphertext $C$ is produced by applying the reversal transformation:
|
||||||
|
$$C = \text{ reverse}(P) = p_{n},p_{n - 1},\ldots,p_{1}$$ For example,
|
||||||
|
if $P = \text{ sula}$, then: $$C = \text{ alus }$$
|
||||||
|
|
||||||
|
## Decryption Process
|
||||||
|
|
||||||
|
Given that the reversal operation is an involution (its own inverse),
|
||||||
|
the decryption process involves applying the same transformation. Let
|
||||||
|
$C$ be the ciphertext; then the plaintext $P$ is recovered as:
|
||||||
|
$$P = \text{ reverse}(C)$$
|
||||||
|
|
||||||
|
# Implementation Considerations
|
||||||
|
|
||||||
|
A simple pseudocode implementation of the algorithm is as follows:
|
||||||
|
|
||||||
|
function encrypt(plaintext):
|
||||||
|
return reverse(plaintext)
|
||||||
|
|
||||||
|
function decrypt(ciphertext):
|
||||||
|
return reverse(ciphertext)
|
||||||
|
|
||||||
|
This algorithm may be implemented in any programming language. It is
|
||||||
|
important to note that due to its simplicity, SULA-ALUS is only
|
||||||
|
appropriate for applications where robust cryptographic security is not
|
||||||
|
a requirement.
|
||||||
|
|
||||||
|
# Security Considerations
|
||||||
|
|
||||||
|
The SULA-ALUS algorithm offers minimal protection and should not be used
|
||||||
|
as a substitute for established cryptographic methods. Its reversible
|
||||||
|
nature and lack of key-dependent randomness make it vulnerable to
|
||||||
|
trivial analysis and brute-force reversal. Users are cautioned against
|
||||||
|
employing this algorithm in scenarios where the confidentiality or
|
||||||
|
integrity of sensitive data is paramount.
|
||||||
|
|
||||||
|
# IANA Considerations
|
||||||
|
|
||||||
|
This document has no actions for the Internet Assigned Numbers Authority
|
||||||
|
(IANA).
|
||||||
|
|
||||||
|
# Acknowledgments
|
||||||
|
|
||||||
|
The authors thank the community for insights into minimalist
|
||||||
|
cryptographic mechanisms and for inspiring creative approaches that
|
||||||
|
celebrate cultural references---in this case, the reversal of the
|
||||||
|
Latvian word "sula" to "alus."
|
||||||
5
bibliography.yml
Normal file
5
bibliography.yml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
rfc-2119:
|
||||||
|
type: Book
|
||||||
|
title: Key words for use in RFCs to Indicate Requirement Levels
|
||||||
|
author: S. Bradner
|
||||||
|
date: 1997-03
|
||||||
93
main.md
Normal file
93
main.md
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
Network Working Group []{.box} T. Developer\
|
||||||
|
Internet Engineering Task Force (IETF) []{.box} (Your Organization)\
|
||||||
|
Request for Comments: XXXX []{.box} (Your Email)\
|
||||||
|
Category: Informational []{.box} (Today's Date)
|
||||||
|
|
||||||
|
[RFC SULA-ALUS: A REVERSAL ENCRYPTION ALGORITHM]{align="center"}
|
||||||
|
|
||||||
|
# Status of This Memo
|
||||||
|
|
||||||
|
This memo provides information for the Internet community. It does not
|
||||||
|
specify an Internet standard of any kind. Distribution of this memo is
|
||||||
|
unlimited.
|
||||||
|
|
||||||
|
# Abstract
|
||||||
|
|
||||||
|
This document describes the SULA-ALUS encryption algorithm---a
|
||||||
|
lightweight, reversible transformation whose principal operation is to
|
||||||
|
reverse the input plaintext. The algorithm's name pays homage to the
|
||||||
|
Latvian wordplay where reversing "sula" gives "alus." Although trivial
|
||||||
|
in its operation, this algorithm may serve educational, demonstrative,
|
||||||
|
or low-risk obfuscation purposes.
|
||||||
|
|
||||||
|
# Introduction
|
||||||
|
|
||||||
|
The SULA-ALUS algorithm is founded on a straightforward principle:
|
||||||
|
encryption is performed by reversing the order of characters (or bytes)
|
||||||
|
of the input data. While the transformation is simple and not intended
|
||||||
|
for modern security-critical applications, it can be useful in contexts
|
||||||
|
where a reversible obfuscation method is acceptable or for educational
|
||||||
|
purposes.
|
||||||
|
|
||||||
|
# Conventions Used in This Document
|
||||||
|
|
||||||
|
The key words "MUST," "SHOULD," and "MAY" are to be interpreted as
|
||||||
|
described in RFC 2119 [@rfc-2119].
|
||||||
|
|
||||||
|
# The Reversal Encryption Algorithm
|
||||||
|
|
||||||
|
The core idea behind SULA-ALUS is that the encryption operation is
|
||||||
|
identical to the decryption operation -- they both consist of reversing
|
||||||
|
the input sequence.
|
||||||
|
|
||||||
|
## Encryption Process
|
||||||
|
|
||||||
|
Let $P$ represent the plaintext composed of a sequence of characters:
|
||||||
|
$$P = p_{1},p_{2},\ldots,p_{n}$$
|
||||||
|
|
||||||
|
The ciphertext $C$ is produced by applying the reversal transformation:
|
||||||
|
$$C = \text{ reverse}(P) = p_{n},p_{n - 1},\ldots,p_{1}$$ For example,
|
||||||
|
if $P = \text{ sula}$, then: $$C = \text{ alus }$$
|
||||||
|
|
||||||
|
## Decryption Process
|
||||||
|
|
||||||
|
Given that the reversal operation is an involution (its own inverse),
|
||||||
|
the decryption process involves applying the same transformation. Let
|
||||||
|
$C$ be the ciphertext; then the plaintext $P$ is recovered as:
|
||||||
|
$$P = \text{ reverse}(C)$$
|
||||||
|
|
||||||
|
# Implementation Considerations
|
||||||
|
|
||||||
|
A simple pseudocode implementation of the algorithm is as follows:
|
||||||
|
|
||||||
|
function encrypt(plaintext):
|
||||||
|
return reverse(plaintext)
|
||||||
|
|
||||||
|
function decrypt(ciphertext):
|
||||||
|
return reverse(ciphertext)
|
||||||
|
|
||||||
|
This algorithm may be implemented in any programming language. It is
|
||||||
|
important to note that due to its simplicity, SULA-ALUS is only
|
||||||
|
appropriate for applications where robust cryptographic security is not
|
||||||
|
a requirement.
|
||||||
|
|
||||||
|
# Security Considerations
|
||||||
|
|
||||||
|
The SULA-ALUS algorithm offers minimal protection and should not be used
|
||||||
|
as a substitute for established cryptographic methods. Its reversible
|
||||||
|
nature and lack of key-dependent randomness make it vulnerable to
|
||||||
|
trivial analysis and brute-force reversal. Users are cautioned against
|
||||||
|
employing this algorithm in scenarios where the confidentiality or
|
||||||
|
integrity of sensitive data is paramount.
|
||||||
|
|
||||||
|
# IANA Considerations
|
||||||
|
|
||||||
|
This document has no actions for the Internet Assigned Numbers Authority
|
||||||
|
(IANA).
|
||||||
|
|
||||||
|
# Acknowledgments
|
||||||
|
|
||||||
|
The authors thank the community for insights into minimalist
|
||||||
|
cryptographic mechanisms and for inspiring creative approaches that
|
||||||
|
celebrate cultural references---in this case, the reversal of the
|
||||||
|
Latvian word "sula" to "alus."
|
||||||
127
main.typ
Normal file
127
main.typ
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
#let fill = box(width: 1fr, repeat(sym.space))
|
||||||
|
|
||||||
|
|
||||||
|
#set heading(numbering: "1.1.")
|
||||||
|
#show heading: set text(12pt)
|
||||||
|
|
||||||
|
#show outline.entry: it => link(
|
||||||
|
it.element.location(),
|
||||||
|
it.indented(it.prefix(), it.body()),
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
#set par(justify: true)
|
||||||
|
|
||||||
|
Network Working Group #fill T. Developer \
|
||||||
|
Internet Engineering Task Force (IETF) #fill (Your Organization) \
|
||||||
|
Request for Comments: XXXX #fill (Your Email) \
|
||||||
|
Category: Informational #fill (Today’s Date)
|
||||||
|
|
||||||
|
|
||||||
|
#align(
|
||||||
|
center,
|
||||||
|
upper(
|
||||||
|
text(
|
||||||
|
14pt,
|
||||||
|
"RFC SULA-ALUS: A Reversal Encryption Algorithm",
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
||||||
|
#heading("Status of This Memo", numbering: none, outlined: false)
|
||||||
|
|
||||||
|
This memo provides information for the Internet community. It does not
|
||||||
|
specify an Internet standard of any kind. Distribution of this memo is
|
||||||
|
unlimited.
|
||||||
|
|
||||||
|
#heading("Abstract", numbering: none, outlined: false)
|
||||||
|
|
||||||
|
This document describes the SULA-ALUS encryption algorithm—a lightweight,
|
||||||
|
reversible transformation whose principal operation is to reverse the input
|
||||||
|
plaintext. The algorithm’s name pays homage to the Latvian wordplay where
|
||||||
|
reversing "sula" gives "alus."
|
||||||
|
Although trivial in its operation, this algorithm may serve educational,
|
||||||
|
demonstrative, or low-risk obfuscation purposes.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#outline(
|
||||||
|
depth: 3,
|
||||||
|
title: "Table of Contents",
|
||||||
|
)
|
||||||
|
|
||||||
|
= Introduction
|
||||||
|
|
||||||
|
The SULA-ALUS algorithm is founded on a straightforward principle: encryption is
|
||||||
|
performed by reversing the order of characters (or bytes) of the input data.
|
||||||
|
While the transformation is simple and not intended for modern security-critical
|
||||||
|
applications, it can be useful in contexts where a reversible obfuscation method
|
||||||
|
is acceptable or for educational purposes.
|
||||||
|
|
||||||
|
= Conventions Used in This Document
|
||||||
|
|
||||||
|
The key words "MUST," "SHOULD," and "MAY" are to be interpreted as described in
|
||||||
|
RFC 2119 @rfc-2119.
|
||||||
|
|
||||||
|
= The Reversal Encryption Algorithm
|
||||||
|
|
||||||
|
The core idea behind SULA-ALUS is that the encryption operation is identical to
|
||||||
|
the decryption operation -- they both consist of reversing the input sequence.
|
||||||
|
|
||||||
|
== Encryption Process
|
||||||
|
|
||||||
|
Let $P$ represent the plaintext composed of a sequence of characters:
|
||||||
|
$ P = p_1, p_2, ..., p_n $
|
||||||
|
|
||||||
|
The ciphertext $C$ is produced by applying the reversal transformation:
|
||||||
|
$ C = "reverse"(P) = p_n, p_(n-1), ..., p_1 $
|
||||||
|
For example, if $P = "sula"$, then:
|
||||||
|
$ C = "alus" $
|
||||||
|
|
||||||
|
== Decryption Process
|
||||||
|
|
||||||
|
Given that the reversal operation is an involution (its own inverse), the
|
||||||
|
decryption process involves applying the same transformation.
|
||||||
|
Let $C$ be the ciphertext; then the plaintext $P$ is recovered as:
|
||||||
|
$ P = "reverse"(C) $
|
||||||
|
|
||||||
|
= Implementation Considerations
|
||||||
|
|
||||||
|
A simple pseudocode implementation of the algorithm is as follows:
|
||||||
|
|
||||||
|
```
|
||||||
|
function encrypt(plaintext):
|
||||||
|
return reverse(plaintext)
|
||||||
|
|
||||||
|
function decrypt(ciphertext):
|
||||||
|
return reverse(ciphertext)
|
||||||
|
```
|
||||||
|
|
||||||
|
This algorithm may be implemented in any programming language.
|
||||||
|
It is important to note that due to its simplicity, SULA-ALUS is only
|
||||||
|
appropriate for applications where robust cryptographic security is not a
|
||||||
|
requirement.
|
||||||
|
|
||||||
|
= Security Considerations
|
||||||
|
|
||||||
|
The SULA-ALUS algorithm offers minimal protection and should not be used as a
|
||||||
|
substitute for established cryptographic methods. Its reversible nature and lack
|
||||||
|
of key-dependent randomness make it vulnerable to trivial analysis and
|
||||||
|
brute-force reversal. Users are cautioned against employing this algorithm in
|
||||||
|
scenarios where the confidentiality or integrity of sensitive data is paramount.
|
||||||
|
|
||||||
|
= IANA Considerations
|
||||||
|
|
||||||
|
This document has no actions for the Internet Assigned Numbers Authority (IANA).
|
||||||
|
|
||||||
|
= Acknowledgments
|
||||||
|
|
||||||
|
The authors thank the community for insights into minimalist cryptographic
|
||||||
|
mechanisms and for inspiring creative approaches that celebrate cultural
|
||||||
|
references—in this case, the reversal of the Latvian word "sula" to "alus."
|
||||||
|
|
||||||
|
|
||||||
|
#bibliography(
|
||||||
|
title: "References",
|
||||||
|
"bibliography.yml",
|
||||||
|
)
|
||||||
Loading…
Reference in New Issue
Block a user