gpt4 book ai didi

iphone - 如果不是 "IPHONE UDID"使用什么?

转载 作者:太空狗 更新时间:2023-10-30 03:29:17 26 4
gpt4 key购买 nike

哇...看看本周所有关于使用 iPhone 的 UDID 的在线“ panic 故事”。

 [[UIDevice currentDevice] uniqueIdentifier]

我们应该使用什么?

如果手机卖给了另一个用户...并且某个应用已根据手机的 UDID 在远程服务器上存储了一些数据怎么办?

(当然是想避开应用商店“加密限制”的问题)

最佳答案

为什么不使用 Mac 地址,然后可能会对其进行哈希处理。

有一个优秀的UIDevice-Extension Category here

    - (NSString *) macaddress
{
int mib[6];
size_t len;
char *buf;
unsigned char *ptr;
struct if_msghdr *ifm;
struct sockaddr_dl *sdl;

mib[0] = CTL_NET;
mib[1] = AF_ROUTE;
mib[2] = 0;
mib[3] = AF_LINK;
mib[4] = NET_RT_IFLIST;

if ((mib[5] = if_nametoindex("en0")) == 0) {
printf("Error: if_nametoindex error\n");
return NULL;
}

if (sysctl(mib, 6, NULL, &len, NULL, 0) < 0) {
printf("Error: sysctl, take 1\n");
return NULL;
}

if ((buf = malloc(len)) == NULL) {
printf("Could not allocate memory. error!\n");
return NULL;
}

if (sysctl(mib, 6, buf, &len, NULL, 0) < 0) {
printf("Error: sysctl, take 2");
return NULL;
}

ifm = (struct if_msghdr *)buf;
sdl = (struct sockaddr_dl *)(ifm + 1);
ptr = (unsigned char *)LLADDR(sdl);
NSString *outstring = [NSString stringWithFormat:@"%02X:%02X:%02X:%02X:%02X:%02X",
*ptr, *(ptr+1), *(ptr+2), *(ptr+3), *(ptr+4), *(ptr+5)];
// NSString *outstring = [NSString stringWithFormat:@"%02X%02X%02X%02X%02X%02X",
// *ptr, *(ptr+1), *(ptr+2), *(ptr+3), *(ptr+4), *(ptr+5)];
free(buf);

return outstring;
}

您可以将其与模型进行哈希处理吗?

关于iphone - 如果不是 "IPHONE UDID"使用什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3860751/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com