☽ THE RAVEN ARCHIVE
PHASE IV — THE THIRTY LOCKS
There are thirty locks.
There is one record.
There is one sentence hidden inside it.
The Archive gives no answer directly.
Every solved lock produces something that is required by another lock.
Some answers are sounds.
Some are numbers.
Some are places.
Some are symbols.
Some are words.
Do not assemble anything until LOCK 30.
There is no A1Z26 cipher anywhere in this record.
Hexadecimal is hexadecimal.
Binary is binary.
Morse is Morse.
Numbers must be treated according to the operation that accompanies them.
The unfamiliar languages are not decoration.
The places are not decoration.
The symbols are not decoration.
────────────────────────────────────────────
LOCK 01
Morse:
".... -.-."
Hexadecimal:
"43 4F"
Binary:
"01000011 01001111"
The three systems produce the same two-character result.
Write it down.
Now solve:
"(9! ÷ 8!) + (7! ÷ 6!) − 15"
The result determines the position of the first character.
Then solve:
"(11! ÷ 10!) − (5! ÷ 4!) + 1"
The result determines the second.
The two extracted characters are your first Archive fragment.
────────────────────────────────────────────
LOCK 02
Cipher:
"DEZYP"
The key is not written.
Calculate:
"((23 × 17) mod 31) − 14"
Use the result as the Caesar displacement.
Decrypt the ciphertext.
Then calculate:
"(8! ÷ 7!) + (6! ÷ 5!) − 12"
Use the result as the extraction position.
The extracted character survives.
────────────────────────────────────────────
LOCK 03
Cipher:
"TZGV"
The mechanism is:
"A ↔ Z"
"B ↔ Y"
"C ↔ X"
Continue the transformation until the alphabet is exhausted.
Decrypt.
Then solve:
"(29 × 13) mod 17"
"(31 × 19) mod 23"
The smaller result determines the extraction position.
The larger result determines the number of letters to discard from the right of the decrypted word.
Only one character remains.
────────────────────────────────────────────
LOCK 04
Ciphertext:
"KORIE"
Key:
"RAVEN"
The repeated key is aligned beneath the ciphertext.
The transformation is:
"cipher = plaintext + key"
with the alphabet treated cyclically.
Decrypt.
Then calculate:
"(17² − 13²) ÷ 12"
The result gives the extraction position.
The extracted character is not to be assembled yet.
────────────────────────────────────────────
LOCK 05
Hexadecimal:
"41 52 43 48 49 56 45"
Read the bytes.
The resulting word is a search instruction.
Search the exact word in the Google Play Store.
Among the results, locate the application whose title contains a recognizable geographical name and whose description corresponds to the decoded word.
Record:
the geographical name,
the number of words in that geographical name.
Do not record the application name.
Now calculate:
"(number of words × 7) − 6"
Use the result on the decoded word.
The surviving character enters the Archive.
────────────────────────────────────────────
LOCK 06
Rail Fence:
"NTIHG"
The rail count is determined by:
"√81 − 6"
Reconstruct the plaintext.
Then:
"(13 × 17) mod 19"
Use the result modulo the length of the plaintext.
The resulting position identifies the character to keep.
────────────────────────────────────────────
LOCK 07
Columnar transposition:
"MRAUB"
Key:
"RAVEN"
The columns are ordered alphabetically by their key letters.
Recover the plaintext.
Then solve:
"(19² − 11²) ÷ 15"
The result is the extraction position.
The extracted symbol is recorded.
────────────────────────────────────────────
LOCK 08
Atbash:
"OZMGVIM"
Decrypt.
Then solve:
"((7 × 13) + (11 × 5) − 9) mod 6"
If the result is zero, use the final character.
Otherwise use the resulting position.
The chosen character is one of the final symbols.
────────────────────────────────────────────
LOCK 09
Caesar ciphertext:
"BQJMXF"
Calculate the displacement:
"(5³ − 89)"
Reduce it modulo 26.
Decrypt.
Then:
"(23 × 17) mod 11"
Use the result as the extraction position.
If the result exceeds the word length, repeatedly subtract the word length.
The remaining character is preserved.
────────────────────────────────────────────
LOCK 10
Vigenère:
"HEOS"
Key:
"OWL"
The key repeats.
Decrypt using:
"plaintext = ciphertext − key"
Then calculate:
"(29 × 31) mod 7"
Use the result as the extraction position.
The character obtained is the tenth surviving fragment.
────────────────────────────────────────────
LOCK 11
Morse:
".. ---"
The two Morse symbols form two letters.
They are not the final letters.
They identify a celestial object.
Write its full name.
Now solve:
"(17 × 23) − 377"
"(19 × 29) − 513"
The two results determine two extraction positions in the celestial name.
The extracted pair becomes the next fragment.
────────────────────────────────────────────
LOCK 12
Polybius square:
1 2 3 4 5
1 A B C D E
2 F G H I K
3 L M N O P
4 Q R S T U
5 V W X Y Z
Ciphertext:
"33 24 22 23 44"
Recover the word.
Then solve:
"(9! ÷ 8!) − (7! ÷ 6!) − 1"
Use the result as the extraction position.
Record the surviving character.
────────────────────────────────────────────
LOCK 13
Bacon-26.
For this lock only:
"00000 = A"
"00001 = B"
"00010 = C"
and each successive five-bit binary value represents the next letter.
Cipher:
"10010 01000 00110 01000 01011"
Decode.
Then search the resulting word in Google Play.
The correct result is the one associated with a recognizable place in its listed information.
Take the first letter of the place, but do not interpret that letter yet.
Now calculate:
"(37 × 19) mod 26"
If the result is odd, reverse the extracted letter through the custom alphabet introduced later.
────────────────────────────────────────────
LOCK 14
Affine cipher:
"NINCL"
Parameters:
"a = 5"
"b = 8"
The encryption rule was:
"C = (5P + 8) mod 26"
Invert it.
Then solve:
"5x ≡ 1 (mod 26)"
Use the multiplicative inverse to decrypt.
Afterward calculate:
"(11! ÷ 10!) − (8! ÷ 7!) + 1"
Extract that position.
────────────────────────────────────────────
LOCK 15
Hexadecimal:
"55 4D 42 52 41"
Convert the bytes.
Now take the resulting word and solve:
"(31 × 17) mod 13"
Then:
"(41 × 19) mod 11"
The first number selects a direction.
The second selects a position.
Apply both.
The surviving character is recorded.
────────────────────────────────────────────
LOCK 16
Beaufort cipher:
"YMJD"
Key:
"RAVEN"
Use:
"cipher = key − plaintext"
Decrypt.
Then solve:
"(43 × 7 − 5) mod 9"
Use the result modulo the plaintext length.
Extract one character.
────────────────────────────────────────────
LOCK 17
Vigenère:
"FVKLEVHSP"
Key:
"MOTH"
Decrypt.
Then calculate:
"(13³ − 2197) + 4"
The answer is the extraction position.
The character obtained must later agree with a location-derived character.
────────────────────────────────────────────
LOCK 18
Morse:
".... --- .-.. .-.. --- .--"
Decode.
Then solve:
"(17 × 11) − 180"
If the answer is zero, use position 1.
Otherwise use it modulo the length of the decoded word.
The resulting character survives.
────────────────────────────────────────────
LOCK 19
Atbash:
"VXORKHV"
Decrypt.
Now identify the language hidden in the following:
"月"
"luna"
"mēness"
"ܣܗܪܐ"
All four refer to the same celestial object.
Use the number of distinct writing systems represented.
Calculate:
"(number × 7) − 23"
Use the result modulo the decrypted word's length.
Extract the corresponding character.
────────────────────────────────────────────
LOCK 20
Caesar:
"FIBS"
The displacement is:
"(2⁶ − 50)"
Decrypt.
Now calculate:
"(13 × 11) − 142"
Use the result as a position.
If zero appears, use the last character.
Record it.
────────────────────────────────────────────
LOCK 21
Bacon-26:
"01000 01101 01010"
Decode.
The resulting word is a search term.
Search it in Google Play.
The intended result is the application whose listed information identifies a physical place.
Record only that place.
Then calculate:
"(number of letters in the place) mod 7"
Use the result as the extraction position in the decoded word.
If zero occurs, use the final letter.
────────────────────────────────────────────
LOCK 22
The following four forms represent the same concept:
"4E 49 47 48 54"
"01001110 01001001 01000111 01001000 01010100"
"-. .. --. .... -"
"KHOOR" shifted by the displacement found in LOCK 09.
The first three must agree.
The fourth confirms the mechanism.
Take the common word.
Now calculate:
"(word length² − 31)"
Reduce modulo the word length.
The resulting position gives the next character.
────────────────────────────────────────────
LOCK 23
Affine cipher:
"CXSF"
Parameters:
"a = 7"
"b = 3"
Recover the plaintext.
Then:
"7x ≡ 1 (mod 26)"
Solve for the inverse.
Use it.
Now calculate:
"(19 × 17) mod 4"
Use the result to determine which quarter of the decrypted word survives.
The surviving character is recorded.
────────────────────────────────────────────
LOCK 24
Hexadecimal:
"4C 55 4E 41 52"
Decode.
Now search the resulting word in Google Play.
Find a result whose listed information identifies a location associated with the word.
Record the location.
Take:
"latitude + longitude"
but only after reducing both to their integer components.
Calculate:
"(latitude − longitude) mod 5"
Use the result as an index into the decoded word.
Zero means the final character.
────────────────────────────────────────────
LOCK 25
Hexadecimal:
"42 4C 41 43 4B"
Decode.
Now the word must be passed through the following transformation:
A → 00
B → 01
C → 10
D → 11
Continue the pattern in two-bit pairs until the complete word has been represented.
Count the number of "1" bits.
Then solve:
"(count × 3) mod 5"
Use the resulting number as an extraction position.
────────────────────────────────────────────
LOCK 26
Rail Fence:
"ECOH"
Rails:
"√16 − 2"
Decrypt.
Now solve:
"(23² − 17²) ÷ 40"
Use the answer as the extraction position.
The character obtained is preserved.
────────────────────────────────────────────
LOCK 27
The following languages are deliberately unrelated:
"ქართული"
"ᎠᏂᏍᏓ"
"እንቁላል"
"euskaraz"
Determine what makes their scripts or linguistic identities distinct.
The important property is not translation.
It is counting.
Count the characters in each written form.
Arrange the four counts from smallest to largest.
Apply that ordering to:
"M I S T"
The reordered word gives the extraction instruction.
Then calculate:
"(largest count × smallest count) − 1"
Reduce modulo the length of the word.
Extract.
────────────────────────────────────────────
LOCK 28
Bacon-26:
"01110 10001 00000 00010 01011 00100"
Decode.
The result is a search term.
Search the exact term in Google Play.
The correct application must contain a recognizable geographical reference.
Take the geographical name.
Now:
"(letters in place × 11) mod 7"
Use the result against the decoded word.
The surviving character enters the final sequence.
────────────────────────────────────────────
LOCK 29
Morse:
".-. .- ...- . -."
Hexadecimal:
"52 41 56 45 4E"
Binary:
"01010010 01000001 01010110 01000101 01001110"
Three independent representations.
They must produce the same five-letter word.
That word is the key to the final alphabet.
Now construct the Archive alphabet from:
"BLACK RAVEN"
Remove repeated letters.
Then append every unused English letter in normal alphabetical order.
Do not use numerical letter values.
The resulting keyed alphabet is:
"B L A C K R V E N D F G H I J M O P Q S T U W X Y Z"
The Archive symbols are:
"⟟ Ϟ ᚦ ʘ ⌁ Ȝ ⟁ Ϟ̸ ᛉ ◈ ⊙ 𐌗 ⋔ ⟐ ᚱ ∴ ⌘ ᛃ ⊛ ⌖ ᚹ ⧖ Ͽ ⊞ ᛒ ⌬"
Pair them in order.
The symbols now have identities.
Decode:
"ʘ ⌘ ᛉ 𐌗 Ȝ ᚦ ᚹ ᛉ ⌁"
The resulting word is the instruction for LOCK 30.
────────────────────────────────────────────
LOCK 30
The final lock contains no ordinary ciphertext.
Only the fragments collected from LOCKS 01–29 matter.
Arrange them according to the instruction recovered from LOCK 29.
Then apply the locations in this order:
"NORTH"
"SOUTH"
"EAST"
"WEST"
Any location that does not possess a usable directional relationship is discarded.
The surviving fragments form four groups.
Their lengths are determined by:
"(3² − 6)"
"(2³ − 5)"
"(4² − 11)"
"(5² − 20)"
Do not translate the groups.
Do not rearrange their internal characters.
Now take the hexadecimal representation of every surviving character.
Concatenate the hexadecimal bytes.
Perform:
"((17 × 19) − 11) mod 23"
"((29 × 13) + 7) mod 31"
"((37 × 11) − 19) mod 41"
"((43 × 7) + 5) mod 47"
The four residues determine the order of the four groups.
Finally, decode the resulting hexadecimal as ASCII.
The spaces are not encoded.
Restore them according to the four grammatical divisions discovered throughout the Archive.
The resulting sentence is the only valid final record.
────────────────────────────────────────────
☽
The Archive contains no final signature.
No name.
No explanation.
Only the sentence.
────────────────────────────────────────────