加密机

基本信息

属性 值
注册名 computronics:cipher
方块类 pl.asie.computronics.block.BlockCipher
TileEntity pl.asie.computronics.tile.TileCipherBlock
文档名 bundled + cipher(BlockCipher.java:30)
材质包 bundled(捆绑红石样式)
GUI Computronics.guiCipher(BlockCipher.java:32)
创造标签 tabComputronics(继承自 BlockPeripheral.java:29)
开启配置 enable.cipher,默认 true(Computronics.java:257)
附加 API MFR IRedNetOmniNode(BlockCipher.java:25,@Optional.Interface)

功能

非对称/对称密码学设备,提供 encrypt / decrypt 两个方法(TileCipherBlock.java:166)。

算法为 AES/CBC,输出 Base64(TileCipherBlock.java:94-113):Cipher.ENCRYPT_MODE 配 SecretKeySpec(realKey, "AES") 与 IvParameterSpec(iv),结果经 Base64.encodeBytes;解密方向做 Base64.decode 后 new String(..., "UTF8")。

锁定功能:受 cipherblock.canLock(默认 true)控制。锁定后右击只向玩家发送 chat.computronics.cipher.locked 聊天组件而不打开 GUI;判定在服务端进行(BlockCipher.onBlockActivated,BlockCipher.java:35-49)。

锁定状态同时经 RedNet Omni 节点对外暴露(BlockCipher implements IRedNetOmniNode),供 MFR 读取。

外设方法集为 encrypt / decrypt / isLocked / setLocked(TileCipherBlock.java:166)。

数值

数值名 值 范围 来源
cipherblock.canLock true 布尔 Config.java:125-126

交互

触发 行为
右击(已锁定且允许锁定) 发送 chat.computronics.cipher.locked,不开 GUI
右击(未锁定) 打开 guiCipher
RedNet Omni 输入 驱动捆绑红石输入
邻接方块变化(加载 ProjRed 时) 转发捆绑红石输入变化

合成配方

无 OC 配方(ModRecipes.java:135-149):

sss
srs
eie
字符 物品
s 石砖 minecraft:stonebrick
r 红石粉 dustRedstone
e 末影珍珠 minecraft:ender_pearl
i 铁锭 ingotIron

OC 配方(ModRecipes.java:420-436):

ipi
srs
ibi
字符 物品
i 铁锭 ingotIron
r oc:dataCard2
p 末影珍珠 minecraft:ender_pearl
s oc:circuitChip2
b oc:materialCircuitBoardPrinted

相关条目