V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Richard14
V2EX  ›  问与答

win 平台的 powershell 有什么简单的命令,可以让文件的二进制翻转过来吗?

  •  
  •   Richard14 · 66 天前 · 740 次点击
    这是一个创建于 66 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,需求是使用简单命令对文件进行简单加密(在不使用第三方软件的情况下),我不知道 win 平台上 cmd 或者 powershell 是否有类似的功能。

    比如源文件数据是 111100001,是否能让它 0 和 1 翻转,比如变成 000011110

    再或者让顺序反过来也行,比如变成 100001111 这样

    10 条回复    2021-07-13 06:09:15 +08:00
    learningman
        1
    learningman   66 天前 via Android
    这种操作二进制的为啥不拿 C 写一个
    12101111
        2
    12101111   66 天前   ❤️ 1
    老老实实用标准的加密算法, 自己造轮子何必呢, .NET 又不是没有加密库
    LeeReamond
        3
    LeeReamond   66 天前
    @learningman 我估计楼主的不使用第三方软件的意思,包含了自己写的也算第三方
    LimeVista
        4
    LimeVista   66 天前 via Android
    PowerShell 调用 AES 加密
    crab
        5
    crab   65 天前
    hxy100
        6
    hxy100   65 天前
    推荐用 C 写个控制台程序,反正就一个 exe,powershell 或者 cmd 直接调即可,参数可以自定义,并且无功能上的冗余,性能也能够保证。
    ---
    懒得写的话直接去找个开源的下来调用,或者使用 openssl 来加密。
    Richard14
        7
    Richard14   65 天前
    @crab 感谢,功能上似乎是可以实现,不过效果上还有细微差异。我希望的效果是类似于,比如创建一个脚本叫 convert.ps ,使用的时候就 convert.ps file1 ,他就会自动翻转 file1,再次执行 file1 就会翻转回来,也就是解密了。

    因为我完全不懂 ps 脚本所以也不会修改,不过看来是可以做到的
    Richard14
        8
    Richard14   65 天前
    @crab 学习 ps 以后改了一下,确实可以做,但 c#的效率太低导致大文件转换速度太慢,纯靠 ps 编程实现不具备实际操作性,看来似乎没有内建的类似的比特处理系统,可能自己用 C 实现是唯一解。
    ryd994
        9
    ryd994   65 天前 via Android
    @Richard14 你这不仅不懂 ps,还不懂 xor 啊
    xor 1 就等于取反啊

    还有,取反这只能算混淆,不能叫加密。加密算法的可解密性应该取决于且只取决于密钥。而不取决于算法本身的隐秘性,那叫混淆。
    Richard14
        10
    Richard14   65 天前   ❤️ 1
    @ryd994 兄弟你这个,建议在回帖说别人懂不懂什么之前先学好语文,学好阅读理解再学编程。我的回复在上文语境中的意思明显指的是上述脚本中提供的 API 意为根据 A 和 B 两个文件生成新文件 C,而我需要的是能够(通过 xor 1 ),在同样命令下正反翻转单个文件的 api,因为 xor1 和翻转之间的联系过于基础,我想没有人会特殊强调,而后我在下文说改了改脚本功能已经实现了,到你这里就变成不仅不懂 ps 而且不懂 xor 了。另外你这个杠混淆还是加密也挺没意思的
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2054 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 15:56 · PVG 23:56 · LAX 08:56 · JFK 11:56
    ♥ Do have faith in what you're doing.