使用 ASCII 和基数 128 混淆字符串
假设一个字符串是一个数字系统,其中每个事物(可以是字符、DEL 或任何 ASCII 事物)根据该 ASCII 都有一个对应的数字 表格。在Python中如何将属性的任意字符串转换为数字?
一个例子
#car = 35*128**3+99*128**2+97*128**1+114*128**0=75034866
Suppose a string is a number system where each thing, it can be a char, DEL or any ASCII thing, has a corresponding number according to this ASCII table. How can you convert arbitrary string of the property to number in Python?
An example
#car = 35*128**3+99*128**2+97*128**1+114*128**0=75034866
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
试试这个:
结果:
取回原始字符串:
结果:
Try this:
Result:
To get back the original string:
Result:
对于任意长的数字,在 Python 2.x 中使用 Decimal,在 Python 3.x 中仅使用 int。
不知道“加密”。
For arbitrarily long numbers, use Decimal in Python 2.x and just int in Python 3.x.
No idea about 'encryption'.
您正在寻找一个映射来混淆数据。
真正的加密需要使用陷门函数——一种在计算上很容易以一种方式计算的函数,但如果没有特定信息,则很难计算其逆函数。
大多数加密都是基于质因数分解。 Alice 将两个大素数相乘,并将结果提供给 Bob。鲍勃使用这个大素数通过加密函数加密他的数据。找到 Bob 加密函数的逆函数需要知道两个原始素数(加密不需要)。找到这些数字是一项计算成本非常高的任务,因此加密的数据是“安全的”。
正确实施这一点非常困难。如果您想保证数据安全,请找到一个可以为您做到这一点的库。
编辑:我应该指定我所描述的是公钥加密。私钥加密的工作原理有点不同。重要的是,有一个数学基础可以认为,如果没有密钥或某种某种方式,加密数据将很难解密。
You're looking to find a mapping to obfuscate the data.
Real encryption requires the use of a trap door function - a function that is computationally easy to compute one way, but the inverse of which is difficult to compute without specific information.
Most encryption is based on prime factorization. Alice multiplies two large prime numbers together, and gives the results to Bob. Bob uses this large prime number to encrypt his data using an encryption function. Finding the inverse of Bob's encryption function requires knowing the two original prime numbers (encryption does not). Finding these numbers is a very computationally expensive task, so the encrypted data is 'safe'.
Implementing this correctly is VERY difficult. If you want to keep data safe, find a library that does it for you.
EDIT: I should specify that what I described was public key encryption. Private key encryption works a bit differently. The important thing is that there's a mathematical basis for thinking that encrypted data will be hard to decrypt without a key or some sort.