問題タブ [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.
asn.1 - ASN.1 SEQUENCE (OF) 実タグ値
SEQUENCE (OF) ASN.1 データ型のタグ値に関する多くの矛盾する情報を見つけています。
ウィキペディアは、それが 0x10 と 0x30 の両方であると主張しています。
http://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One -> 0x30
Microsoft によると、0x30 です。
http://msdn.microsoft.com/en-us/library/windows/desktop/bb540799%28v=VS.85%29.aspx
また、Bouncycastle のソースには次のものがあります。
したがって、基本的には 0x10 と 0x30 の間のタイです。本当の価値があることを知っていますか、それとも私は何かを見逃していますか?
encoding - ASN.1 SET タイプの制限
SET
ASN.1タイプの制限について混乱しています。一般に、コンポーネントの順序が重要でないことを除けば、SET
型は基本的に と同じであることがわかります。SEQUENCE
Olivier Dubuisson によるASN.1に関する独創的な本、「ASN.1 — Communication Between Heterogeneous Systems」では、SET について次のように述べられています。
SEQUENCE 型のコンポーネントの順序が問題にならない場合は、キーワード SET を使用して、そのような順序付けられていない構造をモデル化します。
この場合、アプリケーションはエンコーダーに最適な順序でコンポーネントを提供できます。
ここですぐに気付くのは、Dubuisson の例では、SET
に2 つのIA5String 型があることです。これは、このチュートリアルでここで読んだことと矛盾しているようです。
SET の型と値の表記は SEQUENCE と似ていますが、各コンポーネントの型は他のすべてのコンポーネントと区別する必要があり、値は任意の順序にすることができます。
SET
では、合法的に 2 つのIA5String
タイプを持つにはどうすればよいでしょうか。SET
私は、ランダムなインターネット チュートリアルよりも Olivier Dubuisson の本を信頼する傾向がありますが、型が同じ型の複数のコンポーネントを持つことができるということは意味がありません。その理由は、ASN.1 では型識別子がエンコードされていない(少なくとも BER のようなほとんどの一般的なエンコードでは) ため、デコーダーはどのコンポーネントにIA5String
適用されるsurname
かを知る方法がないためfirstname
です。順序が重要でないかどうかを判断する方法はありません。
では、オリヴィエ・デュブイソンはここで大きな間違いを犯したのでしょうか? (彼はまた、型の長い説明のどこにも、 aが各型を複数持てないSET
という事実について何も言及していません。)SET
pdp - matlab で標準 PDP を使用したレイリー チャネルを備えた OFDM トランシーバー
EPA、EVA、ETU などの標準 PDP を使用して、レイリー チャネルを備えた OFDM トランシーバーを構築しました。問題は、BPSK でも非常に高い BER を取得していることです。つまり、50 ~ 60% 以上のビットがエラーになっています。散布図で確認できます。私の OFDM トランシーバー ブロック含む:
---- ランダム データ -- 変調 (BPSK、QPSK、QAM) -- Serial2Parallel -- IFFT -- CyclicPrefix >>> Rayleigh Ch >>> CP データの削除---FFT --- Par2Ser ---DeMod --- データをシンクします。
組み込みの matlab 関数を使用して、標準の PDP をパラメーターとして渡すレイリー チャネルを作成しました。
n-OFDM シンボルのフィルタリングと CIR の計算
受信機でも同様に、FFT ブロックの後、受信したシンボルを次のように CFR で割って、この CFR を使用しようとしました。
私が得ているのは、非常に高い SNR と散在するコンスタレーション シンボルです。トランシーバー ブロックの残りの部分はシンプルで、すべてバグがないことが確認されています...改善方法を教えてください。どうすればBERを改善できますか? イコライザーが必要ですか?一致フィルターが役立つでしょうか?よろしくお願いします。
注: レイリー チャネルのみが使用され、AWGN ノイズはまったく追加されません ...
asn.1 - ASN.1 の OID の最初の識別子の BER へのエンコード
OID は、ツリーのような構造を表す方法のようです。
たとえば、1.3.6.1 は iso(1).org(3).did(6).internet(1) です。
最も一般的に使用されているエンコード方式は BER のようですが、最初の 2 桁のエンコードについて混乱しています。最初の 2 桁が 1 バイトにエンコードされるのはなぜですか。また、次のようになるのはなぜですか。
最初の 2 バイトは常に小さい数値であり、したがって 1 バイトに簡単に「格納」できると想定されていますか? なら、それは理解できます。
しかし、なぜマジック ナンバー 40 を使用するのでしょうか。なんで40?
例えば。上記の 1.3.xxx の場合の最初のバイトは 43 としてエンコードされます。