加密机
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | 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 |