问题标签 [ber]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
225 浏览

asn.1 - EmbeddedPDV 的 ASN.1 BER 编码

我正在用 D 编写一个基本编码规则编解码器,并且我想编码一个 EmbeddedPDV,它是根据下面的 ASN.1 定义的。问题是,在编码时identification,我不知道如何在 BER 编码的二进制文件中清楚地表明我提供的是与字段OBJECT IDENTIFIER相关联的syntax字段,而不是与字段相关联的transfer-syntax字段。

我知道,如果您使用显式标记,那么 和 都会有特定于上下文的标识符标记syntaxtransfer-syntax但是缺少 a[0][1]之前syntaxtransfer-syntax分别使我不清楚我应该如何对其进行编码。是否存在与这些字段关联的假定上下文特定标识符?换句话说,我是否应该OBJECT IDENTIFIER使用标识符标签0x81来指定我正在编码syntax和标识符标签0x82来指定我正在编码transfer-syntax

0 投票
1 回答
285 浏览

asn.1 - 如何在 BER 中以不确定长度编码的八位字节字符串中转义双空八位字节?

我正在尝试在 D 中编写基本编码规则编解码器,并且我希望能够使用不定长度编码对数据进行编码,其中长度字节设置为0x80,值字节的结尾用双空0x00 0x00(结束内容)。但是,有时双空值是被编码的实际值的一部分。例如,如果您有一个OCTET STRING,则两个相邻的字节可能是0x00 0x00,这将被解释为END OF CONTENT编码值的一部分,而不仅仅是编码值的一部分,从而导致编码值被截断(最佳情况)。有没有办法对双空值进行编码而不将它们解释为END OF CONTENT?或者您是否希望只对没有双空值的值进行编码?我还没有在任何规范中找到任何关于此的内容。

0 投票
1 回答
295 浏览

der - 您如何对 1994 年后的 ASN.1 EXTERNAL 类型进行编码?

背景:

在 1994 年之前,EXTERNAL是这样定义的(带有自动和显式标记):

但从那以后,它被定义为:

Dubuisson 的ASN.1说(第 412 页):

特定于上下文的标签,特别是出现在encoding组件(类型CHOICE)的替代品之前必须被编码,而不是那些在 1994 版本中计算的标签。

在第 413 页,他描述了如何对 进行编码INSTANCE OF,他指出其编码方式与 相同EXTERNAL。这些identification节目仅由一个数字为 6 ( OBJECT IDENTIFIER) 的通用标签编码。节目的encoding形式

这意味着他正在编码一个INTEGER, 5, 作为他的选择single-ASN-type

我的问题

如果 1994 年后的版本EXTERNAL向后兼容,则data-value必须转换为 1994 年前的替代版本之一encoding哪一个?

换句话说,如果我对 1994 年后的内容进行编码(EXTERNAL仅出于示例的目的而使用),它是否会被编码为presentation-context-ididentification

或者

提前致谢!

0 投票
2 回答
340 浏览

bash - 查找和替换(增加)ASN.1 BER 十六进制值

我有一个长的十六进制字符串(从 BER ASN.1 转换而来),我需要在其中找到并增加一个不正确的特定值。

ASN.1 标签为 84,当value > 127dec. 因此,要增加的值将变为 2 个字节。

该值应从 00 开始。

例如

任何想法如何最好地做到这一点,最好使用标准 bash 命令?

0 投票
0 回答
631 浏览

matlab - 在 Matlab 中计算 BPSK 的 BER

我编写了这段代码,用于以图形方式比较手动计算的 BER 和理论 BER。

手动计算的 BER (err) 始终是 1x1 值,我希望它是与 SNR 值相对应的值范围。

我也替换了这一行:

用这条线:

仍然无法正常工作。

任何人都可以解决这个问题吗?

这是代码:

0 投票
1 回答
1690 浏览

gnuradio - GNURadio PSK 位恢复

我遵循了精彩的 GNURadio 指导教程 PSK 解调: https ://wiki.gnuradio.org/index.php/Guided_Tutorial_PSK_Demodulation

我创建了一个非常简单的 DBPSK 调制器 在此处输入图像描述

我输入了一系列正在滑动的位。所以我输入的第一个字节是 0x01,下一个字节是 0x02、0x04、0x08 等等。这是高清的输出:

前几个字节是垃圾,但随后您可以看到模式。查看第二行,您会看到:0x81、0x02、0x04、0x08、0x10、0x00、0x20、0x40、0x81

行走的就在那里,但在 0x10 之后,PSK 解调器接收到 0x00,然后几个字节后接收到 0x81。似乎时间恢复已关闭。

有没有其他人见过这样的事情?

0 投票
0 回答
70 浏览

java - ASN1 Binary notes 的 BERDecoder().decode(args..) API 可以在单个实例中解码超过 2 MB 的二进制数据吗?

我正在尝试使用 Java BERDecoder().decode(InputStream arg0, Class arg1) API of ASN1 binary notes在单个实例中解码ASN1 BER编码数据(超过 2 MB 数据) ,但我无法解码 ASN1 编码使用BERDecoder().decode(..) API 的数据。

谁能指导我,为什么它不能在单个实例中解码 2MB 数据?

BERDecoder().decode(..) API 有什么限制吗??

如果有人指导我解决我的问题,那将非常有帮助。

0 投票
3 回答
621 浏览

asn.1 - ASN.1 BER Encode Integer 0x10000000FFFFFFFC 不定长度编码

我正在根据规范实施 BER ,我问自己一个问题:当我使用不定长度编码时,如何将整数 0x10000000FFFFFFFC 编码为 BER 整数(标记 0x02)?

到目前为止,我在规范中没有发现任何转义字符,所以我假设我无法对这样的数字进行编码,因此必须依赖发送者也知道这一点,并使用短格式长度编码发送整数。但在 BitStrings 中,也会出现同样的问题。

0 投票
1 回答
791 浏览

matlab - 误码率计算 15,11 汉明码图

下面,在我的代码中是假设找到模拟 BER。但是我在这段代码中遇到错误,其中nErrors = biterr(dataIn,dataDec2)这条线给出了矩阵尺寸不匹配。

有没有人可以帮助我?

0 投票
1 回答
332 浏览

java - 有没有办法在java中将ECDSA的签名格式设置为BER编码?

我正在尝试使用私钥签署消息。它运作良好,但签名以DER encoding. 我想要的是在BER encoding. 这是用于签名的方法:

我在用着BouncyCastle library