IA5STRING ASN.1编码格式:应用内购买收据验证和解码

时间:2013-10-17 19:13:48

标签: ios objective-c in-app-purchase asn.1

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

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

以下是上下文:

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

我已经完成了大部分代码(未经测试!),但在尝试实际取出收据的应用内购买部分时,应用内购买收据字段购买日期被描述为RFC 3339日期。鉴于我有一个RFC 3339日期作为NSString,我想我有一个方法将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相同。

思想?

谢谢, 克里斯。

1 个答案:

答案 0 :(得分:3)

ASN.1 IA5String的字符集是Unicode的前128个字符。这相当于US ASCII。具体细节见ITU-T Rec。 X.680定义了IA5String类型。