LibRay/docs/flow.d2

82 lines
1.8 KiB
Text
Raw Permalink Normal View History

2026-05-18 16:31:58 +02:00
direction: down
Start: {
Ird: libray -i encrypted.iso -d game.ird
Manual: libray -i encrypted.iso -d supplied_key
Automatic: libray -i encrypted.iso
Info: libray -i game.iso --info
}
End: {
Dead: { shape: circle }
Success?: { shape: circle }
}
PrintInfo: Print info about .iso
Start.Info -> PrintInfo
Process: decrypt or re-encrypt
VerifyIrd: Verify \n title ID { shape: diamond }
Key: "" {
NoVerify: No verification, \n use given key
IrdKey: Use .ird key
UseBundled: Use bundled key
UseSelected: Use selected key
}
Start.Manual -> Key.NoVerify -> Process -> End.Success?
Start.Ird -> VerifyIrd
VerifyIrd -> End.Dead: Wrong ID
VerifyIrd -> Key.IrdKey: Same ID in .ird and .iso
Key.IrdKey -> Process
Bundled: "" {
CheckIrd: Check for \n bundled .ird { shape: diamond }
CheckKeys: Check for \n bundled key { shape: diamond }
Size: Size { shape: diamond }
SCN: Size \n Country \n Name { shape: diamond }
Choose: Let user \n Choose { shape: diamond }
CheckKeys -> Size
Size -> SCN: Multiple keys
SCN -> Choose: Multiple keys
}
Net: "" {
Search: Search for .ird online with title ID
Jonny: jonnysp { shape: diamond }
Aldos: aldostools { shape: diamond }
}
Bundled.Size -> Key.UseBundled: Single key
Bundled.SCN -> Key.UseBundled: Single key
Bundled.Choose -> Key.UseSelected
Bundled.SCN -> Net.Search: No keys
Key.UseSelected -> Process
Key.UseBundled -> Process
Bundled.Choose -> Net.Search: Not opted in \n None selected
Start.Automatic -> Bundled.CheckIrd
Bundled.CheckIrd -> Key.IrdKey: Title ID Match
Bundled.CheckIrd -> Bundled.CheckKeys: No keys / No match
Bundled.CheckKeys -> Net.Search: No keys
Net.Search -> Net.Jonny
Net.Jonny -> Net.Aldos: no .ird / \n is down
Net.Aldos -> End.Dead: no .ird
Net.Jonny -> Key.IrdKey: .ird found
Net.Aldos -> Key.IrdKey: .ird found