shell几种字符串加密解密的方法
第一种:〔 Python 与 Bash Shell 的结合 〕
这个命令会让你输入一个字符串,然后会再输出一串加密了的数字。
加密代码[照直输入]:
python -c 'print reduce(lambda a,b: a*256+ord(b), raw_input("string: "), 0)'
解密代码[数字后+P]:
dc -e 输出的数字P
第二种:〔 应该是纯 Bash Shell,含 VIM 的 xxd 〕
用 gtalk@gmail.com 作为明文,加密分两步,当然了,也是可以一步过的,呆会说~
加密代码:
1、echo "gtalk@gmail.com" |xxd -ps -u
得到:6774616C6B40676D61696C2E636F6D0A
2、echo "ibase=16; 6774616C6B40676D61696C2E636F6D0A" |bc
得到:137514765985002236391382606438443478282
一步加密代码:
echo "ibase=16; $(echo "gtalk@gmail.com" |xxd -ps -u)" |bc
得到:137514765985002236391382606438443478282
解密代码:
3、dc -e 137514765985002236391382606438443478282P
得到:gtalk@gmail.com
第三种:〔 Base64 编码,这个很好很强大,适合写加密脚本 〕
同样用 gtalk@gmail.com 作为明文,来看代码:
加密代码:
echo "gtalk@gmail.com" |base64 -i
得到:Z3RhbGtAZ21haWwuY29tCg==
解密代码:
echo "Z3RhbGtAZ21haWwuY29tCg==" |base64 -d
得到:gtalk@gmail.com
shell几种字符串加密解密的方法的更多相关文章
- java字符串加密解密
java字符串加密解密 字符串加密解密的方式很多,每一种加密有着相对的解密方法.下面要说的是java中模拟php的pack和unpack的字符串加密解密方法. java模拟php中pack: /** ...
- linux环境下给文件加密/解密的方法
原文地址:linix环境下给文件加密/解密的方法 作者:oracunix 一. 利用 vim/vi 加密:优点:加密后,如果不知道密码,就看不到明文,包括root用户也看不了:缺点:很明显让别人知 ...
- C# 字符串加密解密函数
原文:C# 字符串加密解密函数 using System; using System.Text;using System.Security.Cryptography; using System.IO; ...
- 简单的JavaScript字符串加密解密
简单的JavaScript字符串加密解密 <div> <input type="text" id="input" autofocus=&quo ...
- C# 字符串加密解密方法
这个是加密的算法的命名空间,使用加密算法前要引用该程序集 System.Security.Cryptography using System;using System.Data;using Syst ...
- 从网上整理的一些delphi字符串加密解密方法
function Encode(Str: string): string; var //加密 TmpChr: AnsiChar; i, Len: integer; begin Result := St ...
- 记6种php 加密解密方法
<?php function encryptDecrypt($key, $string, $decrypt){ if($decrypt){ $decrypted = rtrim(mcrypt_d ...
- 6种php加密解密方法
<?php function encryptDecrypt($key, $string, $decrypt){ if($decrypt){ $decrypted = rtrim(mcrypt_d ...
- 02-26 ASP.NET加密解密的方法
MD5加密.解密的方法. 使用时的代码备忘:Response.Write(FormsAuthentication.HashPasswordForStoringInConfigFile("要加 ...
随机推荐
- ural1018依赖背包-边权
其实用点权更简单,但这种做法是边权的 /* 依赖背包问题 dp[u][k]表示u结点往下共走k步的最大值 */ #include<iostream> #include<cstring ...
- Unnamed namespaces
Unnamed namespaces The unnamed-namespace-definition is a namespace definition of the form inline(o ...
- 论文阅读笔记二十八:You Only Look Once: Unified,Real-Time Object Detection(YOLO v1 CVPR2015)
论文源址:https://arxiv.org/abs/1506.02640 tensorflow代码:https://github.com/nilboy/tensorflow-yolo 摘要 该文提出 ...
- linux:安装Memcache并使用
1.Linux安装Memcache : curl -O http://memcached.org/files/memcached-1.5.4.tar.gz 解压 2.启动Memcache: memca ...
- hive sql常用整理-hive引擎设置
遇到个情况,跑hive级联insert数据报错,可以尝试换个hive计算引擎 hive遇到FAILED: Execution Error, return code 2 from org.apache. ...
- BootStrap标题制作模板
<!DOCTYPE html><html lang="zh-CN"> <head> <meta charset="UTF-8&q ...
- Spring data JPA中使用Specifications动态构建查询
有时我们在查询某个实体的时候,给定的条件是不固定的,这是我们就需要动态 构建相应的查询语句,在JPA2.0中我们可以通过Criteria接口查询,JPA criteria查询.相比JPQL,其优势是类 ...
- ASP.NET Core IHostEnvironment和IApplicationLifetime介绍
IHostEnvironment获取程序信息 public void Configure(IApplicationBuilder app, IHostingEnvironment env) { app ...
- centos 6.5升级内核到3.1
1.查看本机内核版本 [root@localhost ~]# uname -r 2.6.32-358.el6.x86_64 2.安装含有内核软件的源 步骤一:导入证书 [root@localhost ...
- 【Android】application标签说明
<application> <application android:allowClearUserData=["true" | "false" ...