当前位置:首页 » 编程软件 » 反编译sha1

反编译sha1

发布时间: 2023-11-06 13:29:49

⑴ springmvc spring mybatis 框架搭建的MAVEN项目,怎么加密解密啊,有源码

不知道你说的加密解密是指项目中对某个字段加密解密,还是 要多源码进行加密解密,如果是对某个字段加密解密,比如密码,可以自己手写一个工具类(网上也可以找到),将传过去的字符串用MD5或者sha1加密后返回的方式,需要加密就调用这个方法,如果你要对整个项目的源码加密,那应该是没办法,因为不管怎么加密运行的时候都需要转化为字节码。字节码.class都是可以反编译过来的

⑵ 打开apk内的resources时显示错误,是不是这个apk是加密了的,安卓能否反编译打开

解决方案:将apktool版本升级到2.0.0即可解决,但要注意的是这一版本使用jdk1.7编译的,所以jre低于1.7的会报错;
将apktool升级到2.0.0时,重打包出来的apk在安装时报错:INSTALL_PARSE_FAILED_NO_CERTIFICATES。网上说是没有签名,可已经用jarsigner签名过了,后来发现是由于jdk7的默认签名算法改变了,和jdk6的不同。
解决方案:使用jarsigner签名时要注意加入以下选项,这样打出来的apk就ok了:
-digestalg SHA1 -sigalg MD5withRSA

⑶ RC4 与 DES 哪个算法最安全

随机密钥加密算法:RC4
位密码算法:DES 三重DES(Triple-DES)仍然是很安全的,但是也只是在别无他法的情况下的一个较好的选择。显然高级加密标准(AES)是一个更好的加密算法,NIST用AES代替Triple-DES作为他们的标准(下面有更详细的讨论)。其他较好的算法包括另外两个AES的变种算法Twofish和Serpent-也称为CAST-128,它是效率和安全的完美结合。这几个算法不仅比DES更安全,而且也比DES的速度更快。为什么要使用一些又慢又不安全的算法呢?SHA1是一个哈希函数,而不是一个加密函数。作为一个哈希函数,SHA1还是相当优秀的,但是还需要几年的发展才能用作加密算法。如果你正在设计一个新系统,那么谨记你可能会在若干年后用SHA1代替目前的算法。我再重复一遍:只是可能。呵呵,希望能帮到你!谢谢望采纳哦!

⑷ android客户端怎样用七牛上传照片

相信很多开发者会把图片存放到七牛上,我的web站点也是吧图片存储到七牛上,对于以图片为主的站点,这样可以节省很大带宽。
将图片上传到七牛服务器的重点就是获得上传凭证uploadToken,直接把AccessKey和Secret放到客户端太不安全,容易被反编译。所以需要在服务器端根据AccessKey和Secret动态生成一个uploadToken,然后传回到客户端,客户端通过这个uploadToken将图片上传到七牛服务器。
第一、在服务器端生成uploadToken

//将图片上传到七牛 start
$bucket='七牛空间名称';
$expires = 3600;
$accessKey='去七牛查看';
$secretKey='去七牛查看';
$client = new QiniuClient($accessKey,$secretKey);
$flags = array();
$scope = $bucket;
$deadline = time() + $expires;
$flags['scope'] = $scope;
$flags['deadline'] = $deadline;
$flags['returnBody'] = null;
echo $client->uploadToken($flags);

这里注意一下bucket:七牛空间名称和deadline:uploadToken失效时间,具体可查看一下官网上传凭证介绍
uploadToken($flags)是自己封装的用于生成上传凭证的函数

public function uploadToken($flags) { if(!isset($flags['deadline'])) $flags['deadline'] = 3600 + time(); $encodedFlags = self::urlsafe_base64_encode(json_encode($flags)); $sign = hash_hmac('sha1', $encodedFlags, $this->secretKey, true); $encodedSign = self::urlsafe_base64_encode($sign); $token = $this->accessKey.':'.$encodedSign. ':' . $encodedFlags; return $token; }
public static function urlsafe_base64_encode($str){
$find = array("+","/");
$replace = array("-", "_");
return str_replace($find, $replace, base64_encode($str));
}

第二、下载qiniu-android-sdk-7.0.0.jar和android-async-http-1.4.6并导入项目
第三、android上传图片
由于Android4.0 以后不允许在主线程进行网络连接,所以需要新开个线程来获取上传凭证。

/*
* 上传图片到七牛
*/
private void uploadImg(){
new Thread(new Runnable(){
@Override
public void run() {
//获得七牛上传凭证uploadToken
String token=getUploadToken();
//手机SD卡图片存放路径
String imgPath="";
try {
imgPath=FileUtil.getBasePath()+ "/test.jpg";
} catch (IOException e) {
e.printStackTrace();
}
if(token!=null){
String data = imgPath;
//图片名称为当前日期+随机数生成
String key = getRandomFileName();
UploadManager uploadManager = new UploadManager();
uploadManager.put(data, key, token,
new UpCompletionHandler() {
@Override
public void complete(String arg0, ResponseInfo info, JSONObject response) {
// TODO Auto-generated method stub
Log.i("qiniu", info.toString());
}
}, null);
}
else{
Log.i("fail", "上传失败");
}
}
}).start();
}

FileUtil.getBasePath()使用来获取SD卡基本路径,getRandomFileName()生成一个随机数来命名上传图片,具体方法我在这就不写了。

获得上传凭证的方法也很简单,直接使用httpget和服务器通信,获得第一步中生成的数据即可。(注意10.0.2.2是模拟器提供的特殊IP,等同于在电脑端的环回测试IP127.0.0.1)

/*
* 获得七牛上传凭证uploadtoken
*/

private String getUploadToken()
{
HttpClient client = new DefaultHttpClient();
StringBuilder builder = new StringBuilder();

HttpGet myget = new HttpGet("http://10.0.0.2/test/getUploadToken.php");
try {
HttpResponse response = client.execute(myget);
BufferedReader reader = new BufferedReader(new InputStreamReader(
response.getEntity().getContent()));
for (String s = reader.readLine(); s != null; s = reader.readLine()) {
builder.append(s);
}
return builder.toString();
} catch (Exception e) {
Log.i("url response", "false");
e.printStackTrace();
return null;
}
}

通过LOG日志可以看到Qiniu--success,说明上传成功。

⑸ 七牛图片基本处理和水印能同时用吗

相信很多开发者会把图片存放到七牛上,我的web站点也是吧图片存储到七牛上,对于以图片为主的站点,这样可以节省很大带宽。 将图片上传到七牛服务器的重点就是获得上传凭证uploadToken,直接把AccessKey和Secret放到客户端太不安全,容易被反编译。所以需要在服务器端根据AccessKey和Secret动态生成一个uploadToken,然后传回到客户端,客户端通过这个uploadToken将图片上传到七牛服务器。 第一、在服务器端生成uploadToken //将图片上传到七牛 start $bucket='七牛空间名称'; $expires = 3600; $accessKey='去七牛查看'; $secretKey='去七牛查看'; $client = new QiniuClient($accessKey,$secretKey); $flags = array(); $scope = $bucket; $deadline = time() + $expires; $flags['scope'] = $scope; $flags['deadline'] = $deadline; $flags['returnBody'] = null; echo $client->uploadToken($flags); 这里注意一下bucket:七牛空间名称和deadline:uploadToken失效时间,具体可查看一下官网上传凭证介绍 uploadToken($flags)是自己封装的用于生成上传凭证的函数 public function uploadToken($flags) { if(!isset($flags['deadline'])) $flags['deadline'] = 3600 + time(); $encodedFlags = self::urlsafe_base64_encode(json_encode($flags)); $sign = hash_hmac('sha1', $encodedFlags, $this->secretKey, true); $encodedSign = self::urlsafe_base64_encode($sign); $token = $this->accessKey.':'.$encodedSign. ':' . $encodedFlags; return $token; } public static function urlsafe_base64_encode($str){ $find = array("+","/"); $replace = array("-", "_"); return str_replace($find, $replace, base64_encode($str)); } 第二、下载qiniu-android-sdk-7.0.0.jar和android-async-http-1.4.6并导入项目 第三、android上传图片 由于Android4.0 以后不允许在主线程进行网络连接,所以需要新开个线程来获取上传凭证。 /* * 上传图片到七牛 */ private void uploadImg(){ new Thread(new Runnable(){ @Override public void run() { //获得七牛上传凭证uploadToken String token=getUploadToken(); //手机SD卡图片存放路径 String imgPath=""; try { imgPath=FileUtil.getBasePath()+ "/test.jpg"; } catch (IOException e) { e.printStackTrace(); } if(token!=null){ String data = imgPath; //图片名称为当前日期+随机数生成 String key = getRandomFileName(); UploadManager uploadManager = new UploadManager(); uploadManager.put(data, key, token, new UpCompletionHandler() { @Override public void complete(String arg0, ResponseInfo info, JSONObject response) { // TODO Auto-generated method stub Log.i("qiniu", info.toString()); } }, null); } else{ Log.i("fail", "上传失败"); } } }).start(); } FileUtil.getBasePath()使用来获取SD卡基本路径,getRandomFileName()生成一个随机数来命名上传图片,具体方法我在这就不写了。 获得上传凭证的方法也很简单,直接使用httpget和服务器通信,获得第一步中生成的数据即可。(注意10.0.2.2是模拟器提供的特殊IP,等同于在电脑端的环回测试IP127.0.0.1) /* * 获得七牛上传凭证uploadtoken */ private String getUploadToken() { HttpClient client = new DefaultHttpClient(); StringBuilder builder = new StringBuilder(); HttpGet myget = new HttpGet("10.0.0.2/test/getUploadToken.php"); try { HttpResponse response = client.execute(myget); BufferedReader reader = new BufferedReader(new InputStreamReader( response.getEntity().getContent())); for (String s = reader.readLine(); s != null; s = reader.readLine()) { builder.append(s); } return builder.toString(); } catch (Exception e) { Log.i("url response", "false"); e.printStackTrace(); return null; } } 通过LOG日志可以看到Qiniu--success,说明上传成功。

⑹ anzhuo应用程序怎么反编译

让我们先来认识下APK文件. Android的应用程序包为扩展名为.apk文件, 无论你是从手机市场里下载, 还是电脑中下载. 都是这类APK文件. APK是AndroidPackage的缩写,即Android安装包(apk)。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。apk文件和sis一样,把android sdk编译的工程打包成一个安装程序文件,格式为apk。 APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接,和Windows Mobile中的PE文件有区别.


android


一个APK文件解压开通常有这样的文件夹:


META-INF 目录:

MANIFEST.MF: manifest文件

CERT.RSA: 应用程序证书

CERT.SF: SHA-1资源签名列表. 例如:

Signature-Version: 1.0

Created-By: 1.0 (Android)

SHA1-Digest-Manifest: wxqnEAI0UA5nO5QJ8CGMwjkGGWE=

...

Name: res/layout/exchange_component_back_bottom.xml

SHA1-Digest: eACjMjESj7Zkf0cBFTZ0nqWrt7w=

...

Name: res/drawable-hdpi/icon.png

SHA1-Digest: DGEqylP8W0n0iV/ZzBx3MW0WGCA=


lib: 这个目录包含某些特定编译代码, 这个文件夹分成下面这些

armeabi: 只基于所有ARM处理器的编译代码.

armeabi-v7a: 所有ARMv7处理器的编译代码

x86: 仅针对x86处理器的编译代码

mips: 为MIPS处理器的编译代码

res: 包含资源的目录不编译到资源文件,看下面:

assets: 包含应用程序的资产,可以通过AssetManager进行检索.

AndroidManifest.xml: 包含应用程序的元数据文件,描述名称、版本、访问权限、引用应用程序的库文件。此文件在Android二进制格式, 可被工具转化为可读的纯文本XML工具,如 AXMLPrinter2,apktool,或Androguard。设置,可以通过AssetManager进行检索

classes.dex: Dalvik字节码

resources.arsc : 一个包含预编译资源文件,如二进制的XML.

有两种方法反编译APK, 如果是为了汉化程序, 可以使用apktool:


安装过程

1.下载apktool1.5.2.tar.bz2和apktool-install-windows-r05-brut1.tar.bz2

2.把两个文件都解压放在同一个目录,共三个文件

aapt.exe

apktool.bat

apktool.jar用于解包,apktool.jar和aapt.exe联合用于打包。


在命令行执行:


apktool d d:xxx.apk d:xxx


xxx 为你的输出目录, 然后你就可以看一些xml的资源文件, 以及Smali文件. 如下图某APK文件反编译输出目录:

由此可见,Android应用程序反编译并不难, 加密与解密的斗争一直会持续.

⑺ ios 用七牛sdk上传资源,报405错误是什么情况

相信很多开发者会把图片存放到七牛上,我的web站点也是吧图片存储到七牛上,对于以图片为主的站点,这样可以节省很大带宽。
将图片上传到七牛服务器的重点就是获得上传凭证uploadToken,直接把AccessKey和Secret放到客户端太不安全,容易被反编译。所以需要在服务器端根据AccessKey和Secret动态生成一个uploadToken,然后传回到客户端,客户端通过这个uploadToken将图片上传到七牛服务器。
第一、在服务器端生成uploadToken

//将图片上传到七牛 start
$bucket='七牛空间名称';
$expires = 3600;
$accessKey='去七牛查看';
$secretKey='去七牛查看';
$client = new QiniuClient($accessKey,$secretKey);
$flags = array();
$scope = $bucket;
$deadline = time() + $expires;
$flags['scope'] = $scope;
$flags['deadline'] = $deadline;
$flags['returnBody'] = null;
echo $client->uploadToken($flags);

这里注意一下bucket:七牛空间名称和deadline:uploadToken失效时间,具体可查看一下官网上传凭证介绍
uploadToken($flags)是自己封装的用于生成上传凭证的函数

public function uploadToken($flags) { if(!isset($flags['deadline'])) $flags['deadline'] = 3600 + time(); $encodedFlags = self::urlsafe_base64_encode(json_encode($flags)); $sign = hash_hmac('sha1', $encodedFlags, $this->secretKey, true); $encodedSign = self::urlsafe_base64_encode($sign); $token = $this->accessKey.':'.$encodedSign. ':' . $encodedFlags; return $token; }
public static function urlsafe_base64_encode($str){
$find = array("+","/");
$replace = array("-", "_");
return str_replace($find, $replace, base64_encode($str));
}

第二、下载qiniu-android-sdk-7.0.0.jar和android-async-http-1.4.6并导入项目
第三、android上传图片
由于Android4.0 以后不允许在主线程进行网络连接,所以需要新开个线程来获取上传凭证。

/*
* 上传图片到七牛
*/
private void uploadImg(){
new Thread(new Runnable(){
@Override
public void run() {
//获得七牛上传凭证uploadToken
String token=getUploadToken();
//手机SD卡图片存放路径
String imgPath="";
try {
imgPath=FileUtil.getBasePath()+ "/test.jpg";
} catch (IOException e) {
e.printStackTrace();
}
if(token!=null){
String data = imgPath;
//图片名称为当前日期+随机数生成
String key = getRandomFileName();
UploadManager uploadManager = new UploadManager();
uploadManager.put(data, key, token,
new UpCompletionHandler() {
@Override
public void complete(String arg0, ResponseInfo info, JSONObject response) {
// TODO Auto-generated method stub
Log.i("qiniu", info.toString());
}
}, null);
}
else{
Log.i("fail", "上传失败");
}
}
}).start();
}

FileUtil.getBasePath()使用来获取SD卡基本路径,getRandomFileName()生成一个随机数来命名上传图片,具体方法我在这就不写了。

获得上传凭证的方法也很简单,直接使用httpget和服务器通信,获得第一步中生成的数据即可。(注意10.0.2.2是模拟器提供的特殊IP,等同于在电脑端的环回测试IP127.0.0.1)

/*
* 获得七牛上传凭证uploadtoken
*/

private String getUploadToken()
{
HttpClient client = new DefaultHttpClient();
StringBuilder builder = new StringBuilder();

HttpGet myget = new HttpGet("");
try {
HttpResponse response = client.execute(myget);
BufferedReader reader = new BufferedReader(new InputStreamReader(
response.getEntity().getContent()));
for (String s = reader.readLine(); s != null; s = reader.readLine()) {
builder.append(s);
}
return builder.toString();
} catch (Exception e) {
Log.i("url response", "false");
e.printStackTrace();
return null;
}
}

通过LOG日志可以看到Qiniu--success,说明上传成功。

⑻ .bat如何用md5加密

//////////////////////////////////////////////////
//
首先你要明白两点:
1.批处理是靠cmd.exe解释运行的
2.md5不是加密算法而是“信息摘要算法”,不管多大的文件或者多长的字符串只返回16或32位的hash信息

所以md5不可逆,而且不是严格意义的加密算法?要说加密的话也应该是rsa,des这些IEEE认证的算法的

你的问题,可以写个exe,把加密后的bat作为资源捆绑进exe中,然后由exe负责解密运行,但这样得不偿失,成本太高,还不如直接写exe来的快

如果你非要加密想来想去只有一个比较经济可行的方法,用winrar把批处理做成一个可执行的解压文件,就是exe格式的rar包,然后给这个exe文件加个强壳,这样可以在一定程度上保护起来,但是内行还是可以解出来的

最后,共享是一种美德,虽然我基本可以肯定你哪个所谓的bat技术含量不会太高。。
/////////////////////////////////////////////

⑼ C#加密狗的实现

对部分加密狗实现IP或者MAC限制,精锐5加密锁可实现绑定本机设备。
C#程序使型告用精锐5加密狗的方式来实现软件的加密保护卜腔明及授权管理,需考虑安全及授权管理两方面。
加密的安全性,不能随便被破。精锐5加密锁的加密技术由:代码加密/代码碎片化/代码混淆。
代码碎片化:深思自圆李主知识产权的最新技术:基于 LLVM 和 ARM 虚拟机技术,自动抽取海量代码移入 SS 内核态模块,极大的降低了使用门槛, 不再需要手动移植算法,可移植的算法从有限的几个增长到几乎无限多,支持的语言也不再限于 C, 这是加密技术的一次综合应用,效果上类似于将软件打散执行,让破解者无从下手。
代码加密(IL):针对dotNet程序,保护IL代码:一种动态运行方法解密被保护代码。把当前代码加密存储为密文,存储起来,当程序运行到被保护函数时候自动解密并且执行,执行之后再擦除代码,执行之后再擦除代码,运行到哪里才解密哪里的代码,黑客无法获得原始的中间语言的指令和内存完整性的代码,由于是纯内存操作所以运行速度快, 性价高的保护手段,建议全加。
代码混淆(IL):
将代码中的各种元素,如变量,函数,类的名字改写成无意义的名字。比如改写成单个字母,或是简短的无意义字母组合,甚至改写成“__”这样的符号,使得阅读的人无法根据名字猜测其用途。
a)重写代码中的部分逻辑,将其变成功能上等价,但是更难理解的形式。比如将for循环改写成while循环,将循环改写成递归,精简中间变量,等等。
b) 打乱代码的格式。比如删除空格,将多行代码挤到一行中,或者将一行代码断成多行等等。
c) 添加花指令,通过特殊构造的指令来使得反汇编器出错,进而干扰反编译工作的进行。
加密锁本身的安全:
内置安全算法
精锐5加密狗内置安全算法有:
RSA1024/RSA2048
ECC192/ECC256/ECC384
AES128/AES192/AES256
DES/TDES
SHA1/SHA256
存储空间:目前加密锁存储空间最大可达到512K。
接口标准:USB2.0全速设备
加密方式:加壳工具
加壳工具可快速的对代码进行加密保护,无需修改代码,几分钟即可完成高安全性加密。

热点内容
左游手柄助手2脚本 发布:2024-05-19 11:40:28 浏览:1001
挖矿需要什么配置 发布:2024-05-19 11:38:02 浏览:894
eclipse导出ant脚本 发布:2024-05-19 11:20:28 浏览:98
如何改变vivo手机账户密码 发布:2024-05-19 10:56:07 浏览:376
sql的length函数 发布:2024-05-19 10:55:15 浏览:545
数据库管理系统设计报告 发布:2024-05-19 10:49:50 浏览:684
linux怎么将驱动编译进内核 发布:2024-05-19 10:23:47 浏览:768
c语言读程序题 发布:2024-05-19 10:13:52 浏览:675
新的安卓手机怎么样下载微信 发布:2024-05-19 10:05:06 浏览:879
加9的算法 发布:2024-05-19 10:04:15 浏览:264