android - SSL Pinning 在 Android 中无法使用 Certificate Pinner(Hash Key Pinning)
问题描述
我正在使用 hashkey 进行证书固定。但是在使用 burp 套件拦截应用程序时,SSL 固定不起作用。会是什么原因?这种方法有什么事情要做吗?最低 API 级别为 21。
CertificatePinner certificatePinner = new CertificatePinner.Builder()
.add("www.domain.com", "sha256/-------------=")
.build();
HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();
interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient client = new OkHttpClient
.Builder()
.certificatePinner(certificatePinner)
.connectTimeout(60, TimeUnit.SECONDS)
.readTimeout(60, TimeUnit.SECONDS)
.addInterceptor(interceptor).build();
Gson gson = new GsonBuilder()
.setDateFormat("yyyy-MM-dd'T'HH:mm:ssZ")
.create();
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(URL)
.client(client)
.addConverterFactory(GsonConverterFactory.create(gson))
.build();
return retrofit;
解决方案
推荐阅读
- jmeter - 如何在beanshell处理器之间传递filewriter对象
- c# - 从设备管理器中读取属性?
- asp.net-mvc - 使用 _LoginPartial 和 .NET MVC 的动态导航栏
- python - Python Pandas - 非连续时间序列?
- jquery - autocomplete() 生成非文本输出
- flutter - 是否有标准/通常的数据存储位置?
- angular - 在 Angular 的选项卡式模式中正确路由
- c# - 如何编写递归函数
- android - 为 Fused Location 提供程序 onLocationChanged 设置计时器
- python-3.x - 如何获得离集群中心最近的N个数据点?