草庐IT

php - ionic 立方解密在几秒钟内

coder 2023-06-14 原文

我是一名 php 开发人员,目前正在寻找保护 php 代码的软件。我知道存在混淆器和编码器(以及两者).. 但似乎可以“解密”用某些软件编码的代码。

所以我的问题是.. 是否可以解密主要软件公司(zend、ioncube、sourceguardian)生产的源代码.. 为什么这些产品仍在市场上?

如果有人可以(付费)在几秒钟内解密所有内容,为什么这些软件继续销售?

顺便说一句,我在 ioncube 论坛上问过这个问题,我的消息被删除了。

问候。

最佳答案

答案简单地简化为:因为有愚蠢到相信 PHP 可以“安全编码”的蠢货,同样的道理,有些愚蠢到相信应用程序需要序列代码会自动使其安全的人。

ionCube 依赖于一个非常简单的实现 - 从头到尾异或,这几乎不是“安全措施”。它作为 VM 运行 - 除了完全逆向工程之外,它还容易受到所有 VM 边信道攻击(这里有一个演示:https://media.blackhat.com/ad-12/Saher/bh-ad-12-stealing-from-thieves-Saher-slides.pdf)。 ionCube会这么说吗?没有为什么?因为它劝阻了绝大多数脚本小子。

我不熟悉 sourceguardian,但 Zend 以相同的方式构建,尽管比 ionCube 更安全且更难被击败。然而,尽管它们并非微不足道,但也并非无法击败。

以下摘自Zend Guard页面:

Encoding is a process where the PHP source code is converted to an intermediate machine readable format. This format is hard for humans to read and convert back to source code. As a result it protects your code from casual browsing. This means that if people obtain access to your site's code they will not be able to use that for unintended purposes.

换句话说,如果您的用户不是随意浏览,这将不会成立。我不了解你,但我不知道有哪个非开发人员随便浏览源代码而不是为了理解它,而且经常破坏它。

周围的每一种 DRM 方法都是如此。然而,它们仍然在市场上。为什么?因为,虽然它们并不完美,但它们足够好可以劝阻绝大多数人。

这方面的规律和最终结论是:如果您构建它,请预料到它会被破坏并为它做好计划

关于php - ionic 立方解密在几秒钟内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16678277/

有关php - ionic 立方解密在几秒钟内的更多相关文章

  1. 区块链之加解密算法&数字证书 - 2

    目录一.加解密算法数字签名对称加密DES(DataEncryptionStandard)3DES(TripleDES)AES(AdvancedEncryptionStandard)RSA加密法DSA(DigitalSignatureAlgorithm)ECC(EllipticCurvesCryptography)非对称加密签名与加密过程非对称加密的应用对称加密与非对称加密的结合二.数字证书图解一.加解密算法加密简单而言就是通过一种算法将明文信息转换成密文信息,信息的的接收方能够通过密钥对密文信息进行解密获得明文信息的过程。根据加解密的密钥是否相同,算法可以分为对称加密、非对称加密、对称加密和非

  2. ruby - Ruby 中的单 block AES 解密 - 2

    我需要尝试一些AES片段。我有一些密文c和一个keyk。密文已使用AES-CBC加密,并在前面加上IV。不存在填充,纯文本的长度是16的倍数。所以我这样做:aes=OpenSSL::Cipher::Cipher.new("AES-128-CCB")aes.decryptaes.key=kaes.iv=c[0..15]aes.update(c[16..63])+aes.final它工作得很好。现在我需要手动执行CBC模式,所以我需要单个block的“普通”AES解密。我正在尝试这个:aes=OpenSSL::Cipher::Cipher.new("AES-128-ECB")aes.dec

  3. ruby-on-rails - 我如何比较 'Bcrypt' Gem解密的密码和加密的密码 - 2

    我正在尝试对某些帖子的评论使用简单的身份验证。用户使用即时ID和密码输入评论我使用“bcrypt”gem将密码存储在数据库中。在comments_controller.rb中像这样@comment=Comment.new(comment_params)bcrypted_pwd=BCrypt::Password.create(@comment.user_pwd)@comment.user_pwd=bcrypted_pwd当用户想要删除他们的评论时,我使用data-confirm-modalgem来确认数据在这部分,我必须解密用户输入的密码以与数据库中的加密密码进行比较我怎样才能解密密码,

  4. ruby-on-rails - 这个 C 和 PHP 程序员如何学习 Ruby 和 Rails? - 2

    按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我来自C、php和bash背景,很容易学习,因为它们都有相同的C结构,我可以将其与我已经知道的联系起来。然后2年前我学了Python并且学得很好,Python对我来说比Ruby更容易学。然后从去年开始,我一直在尝试学习Ruby,然后是Rails,我承认,直到现在我还是学不会,讽刺的是那些打着简单易学的烙印,但是对于我这样一个老练的程序员来说,我只是无法将它

  5. ruby - ruby 中的错误解密错误 - 2

    在执行cipher.final时,提示baddecrypt错误。我试图找出问题所在。但是,我找不到。你能告诉我我的代码有什么问题吗?这是我的代码:require'openssl'require'base64'require'hex_string'result_h="4fcd6b1ac843a2f8bf13f2e53dd5c1544fcd6b1ac843a2f8"key=result_h.to_byte_stringencrypt_str="79994A6EF73DA76C";cipher=OpenSSL::Cipher.new("DES-EDE3-CBC")cipher.decrypt

  6. ruby-on-rails - rails 加密/解密 - 2

    我需要在我的Rails应用程序中进行加密和解密。我正在尝试使用ezcrypto,但每当我进行解密时,我都会收到此错误。OpenSSL::Cipher::CipherErrorinProfilesController#showwrongfinalblocklength需要更改什么才能停止此错误。我尝试像这样使用openssl的另一个实现(从我的模型中调用的方法)defencrypt_attr(unencrypted)c=OpenSSL::Cipher.new("aes-256-cbc")c.encryptc.key=Digest::SHA1.hexdigest('pass')e=c.up

  7. ruby-on-rails - Rails 中的加密解密 - 2

    我正在使用require'digest/sha1'来加密我的密码并保存到数据库中。在登录期间,我通过匹配保存在数据库中的加密密码进行身份验证,并再次加密一次使用密码字段中的输入。截至目前一切正常,但现在我想执行“忘记密码”功能。为此,我需要解密保存在数据库中的密码以找到原始密码。如何使用digest/sha1解密?或者谁知道什么算法也支持加解密?我在Rails上使用ruby​​,所以我需要用Ruby的方式来完成它。 最佳答案 SHA1是一种单向函数,您无法将其反转。这可能与密码重置有关:http://www.binarylogic.

  8. ruby-on-rails - Rails 还是 Sinatra? PHP程序员入门学习哪个好? - 2

    按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我使用PHP的时间太长了,对它感到厌倦了。我也想学习一门新语言。我一直在使用Ruby并且喜欢它。我必须在Rails和Sinatra之间做出选择,那么您会推荐哪一个?Sinatra真的不能用来构建复杂的应用程序,它只能用于简单的应用程序吗?

  9. ruby - 如何使用 Ruby gpgme 解密 PGP 加密文件 - 2

    我找不到有关如何执行此操作的单个示例。我有一个PGP加密的XLS文件和一个PGPkey。这是我返回空字符串的代码:require'rubygems'require'gpgme'defpassfunc(obj,uid_hint,passphrase_info,prev_was_bad,fd)io=IO.for_fd(fd,'w')io.puts"PASSPHRASE"io.flushendencrypted_data=GPGME::Data.new(File.open("file.xls.pgp"))key=GPGME::Data.new(File.open("key.txt"))ctx

  10. ruby-on-rails - PHP 魔术方法 __call、__get 和 __set 的 Ruby 等价物 - 2

    我很确定Ruby有这些(等同于__call、__get和__set),否则find_by将如何在Rails中工作?也许有人可以举一个简单的例子来说明如何定义与find_by相同的方法?谢谢 最佳答案 简而言之你可以映射__调用带有参数的method_missing调用__设置为方法名称以'='结尾的method_missing调用__获取不带任何参数的method_missing调用__调用PHPclassMethodTest{publicfunction__call($name,$arguments){echo"Callingob

随机推荐