密码加密,编写一个程序,将个人的各种密码统一加密保存起来,要求加密的密码可 以包含英文字母或数字。加密方式是将每位原密码的ASCII值加3返回新字母或数字,然后在新生成的每位密码前后各加一位随机生成的假密 码。
时间: 2024-02-25 16:53:37 浏览: 51
好的,我可以为您编写这个程序。以下是 Python 代码实现:
```python
import random
def encrypt_password(password):
fake_password = chr(random.randint(33, 126)) # 随机生成一个 ASCII 值在 33 到 126 之间的字符作为假密码
encrypted_password = ""
for char in password:
new_char = chr(ord(char) + 3) # 将每位密码的 ASCII 值加 3 得到新的 ASCII 值
encrypted_password += new_char
encrypted_password = fake_password + encrypted_password + fake_password # 在新生成的密码前后各加一位假密码
return encrypted_password
# 测试
password = "abc123"
encrypted_password = encrypt_password(password)
print(f"原密码:{password}")
print(f"加密后的密码:{encrypted_password}")
```
输出:
```
原密码:abc123
加密后的密码:~def456~
```
注意:这种简单的加密方式并不是十分安全,建议使用更加复杂、安全的加密算法来保护个人密码。
相关问题
python密码加密 编写一个程序,将个人的各种密码统一加密保存起来,要求加密的密码可 以包含英文字母或数字。加密方式是将每位原密码的ASCII值加3返回新字母或数字,然后在新生成的每位密码前后各加一位随机生成的假
以下是一个简单的Python程序,可以实现个人密码的加密和解密操作:
```python
import random
def encrypt_password(password):
fake_char = chr(random.randint(33, 126))
encrypted_password = ''
for char in password:
new_char = chr(ord(char) + 3)
encrypted_password += new_char
return fake_char + encrypted_password + fake_char
def decrypt_password(encrypted_password):
fake_char = encrypted_password[0]
real_password = ''
for char in encrypted_password[1:-1]:
new_char = chr(ord(char) - 3)
real_password += new_char
return real_password
# 测试加密和解密
password = 'my_password123'
encrypted_password = encrypt_password(password)
print('加密后的密码:', encrypted_password)
decrypted_password = decrypt_password(encrypted_password)
print('解密后的密码:', decrypted_password)
```
程序中,`encrypt_password`函数接受一个原始密码作为参数,生成一个随机字符并将其添加到加密后的密码的首尾,然后对原始密码中的每个字符进行加密操作(即将ASCII值加3),最后将加密后的字符拼接在一起并返回。
`decrypt_password`函数接受一个加密后的密码作为参数,首先提取出首尾的随机字符,然后对密码中的每个字符进行解密操作(即将ASCII值减去3),最后将解密后的字符拼接在一起并返回。
注意,这只是一种简单的加密方法,不应该用于实际的安全场景中。
编写一个程序,将个人的各种密码统一加密保存起来,要求加密的密码可以包含英文字母或数字。加密方式是将每位原密码的ASCII值加3返回新字母或数字,然后在新生成的每位密码前后各加一位随机生成的假密码
好的,以下是一个简单的实现凯撒密码的Python程序,可以满足你的要求:
```python
import random
def encrypt_password(password):
# 生成随机假密码
fake_password = ''.join([chr(random.randint(33, 126)) for _ in range(2)])
# 将每位原密码的ASCII值加3并返回新密码
new_password = ''.join([chr(ord(c) + 3) for c in password])
# 在新密码前后各加一位随机生成的假密码
encrypted_password = fake_password + new_password + fake_password
return encrypted_password
def decrypt_password(encrypted_password):
# 去除前后的假密码
password = encrypted_password[2:-2]
# 将每位加密后的ASCII值减3并返回原密码
return ''.join([chr(ord(c) - 3) for c in password])
# 测试加密和解密函数
password = 'my_password123'
encrypted_password = encrypt_password(password)
decrypted_password = decrypt_password(encrypted_password)
print(f'原始密码:{password}')
print(f'加密后的密码:{encrypted_password}')
print(f'解密后的密码:{decrypted_password}')
```
程序中使用了`encrypt_password`函数来加密密码,其中:
- `fake_password`是两位随机生成的假密码,使用了Python中的`random`模块来生成;
- `new_password`是将原密码中每位字符的ASCII值加3所得到的新密码;
- `encrypted_password`是在新密码前后各加上一位随机生成的假密码所得到的加密后的密码。
程序中还使用了`decrypt_password`函数来解密密码,其中:
- `password`是去除前后的假密码所得到的加密后的密码;
- `decrypted_password`是将加密后的密码中每位字符的ASCII值减3所得到的原密码。
你可以使用这个程序来加密并保存你的各种密码。注意,这个程序不是一个真正意义上的安全加密算法,只是一个简单的实现凯撒密码的示例,建议不要将其用于真正的密码加密。
相关推荐
![php](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![mp4](https://img-home.csdnimg.cn/images/20210720083504.png)