mirror of
https://github.com/xweiba/location-spoofer.git
synced 2026-09-21 22:30:46 +08:00
- iOS 虚拟定位工具,基于本地 HTTP 代理 MITM 方案 - MapKit 原生地图体验,支持搜索、收藏、实时定位 - 完整的设置引导流程(证书安装、WiFi 代理配置、环境验证) - 支持 iOS 15+,SwiftUI 构建
36 lines
650 B
Go
36 lines
650 B
Go
package main
|
|
|
|
import (
|
|
"crypto/x509"
|
|
"encoding/pem"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func TestGenerateCA(t *testing.T) {
|
|
certPEM, keyPEM, err := generateCA()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if len(certPEM) == 0 || len(keyPEM) == 0 {
|
|
t.Fatal("empty CA output")
|
|
}
|
|
block, _ := pem.Decode(certPEM)
|
|
if block == nil {
|
|
t.Fatal("invalid cert PEM")
|
|
}
|
|
cert, err := x509.ParseCertificate(block.Bytes)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
if !cert.IsCA {
|
|
t.Fatal("certificate is not a CA")
|
|
}
|
|
if time.Until(cert.NotAfter).Hours() < 360*24 {
|
|
t.Fatal("CA validity is too short")
|
|
}
|
|
if _, err := parseCA(certPEM, keyPEM); err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
}
|