我试图弄清楚IA5STRING格式(ASN.1)是否实际上等效于ASCII。也就是说,我应该能够做到:

NSString *ia5StringWithDate = [[NSString alloc] initWithBytes:is5StringData length:is5StringLength encoding:NSASCIIStringEncoding];


这里是上下文:

我在this apple doc工作
以及WWDC 2013会议“使用收据保护您的数字销售”。

我已经完成了大部分代码(尚未试用!),但是在尝试实际提取收据的应用内购买部分时,应用内购买收据字段“购买日期”被描述为RFC 3339日期。鉴于我有一个作为NSString的RFC 3339日期,我想我已经有了一种将NSString日期转换为NSDate的方法(请参见How to format convert the string 2013-01-27T02:31:47+08:00 into NSDate)。但是,购买日期的格式为IA5STRING
(请参见this reference)。

the Wiki page for IA5STRING中,它表示“这些字符通常等效于ASCII字母的前128个字符”。我不喜欢“一般”的声音。

This reference表示IA5STRING与ASCII相同。

有什么想法吗?

谢谢,
克里斯。

最佳答案

ASN.1 IA5String的字符集是Unicode的前128个字符。这等效于美国ASCII。具体细节可参见ITU-T Rec。 X.680,它定义了IA5String类型。

关于ios - IA5STRING ASN.1编码格式:应用内购买收据确认和解码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19435259/

10-11 08:09