問題タブ [canonicalization]

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 投票する
4 に答える
13593 参照

representation - Canonical Representation の意味と Web サイトに対する潜在的な脆弱性

Google で正規表現の意味を検索したところ、まったく不可解すぎるドキュメントが見つかりました。正規表現の簡単な説明と、正規表現攻撃に対する Web サイトの典型的な脆弱性は何ですか?

0 投票する
4 に答える
11077 参照

c# - C#でのXMLドキュメントハッシュの生成

C#でXMLドキュメントをハッシュするための最良の方法は何ですか?XMLドキュメントをハッシュして、生成されたときから手動で変更されたかどうかを確認したいと思います。私はこれをセキュリティのために使用していません。誰かがXMLを変更し、それに合わせてハッシュを変更しても問題ありません。

たとえば、ルートの子ノードをハッシュし、そのハッシュをルートの属性として保存します。

0 投票する
1 に答える
1898 参照

validation - WCF署名付きSOAPメッセージの検証

SOAPメッセージのタイムスタンプと本文の検証に問題があります。

自分でコードを検証しようとしているコードを書き始める前に、タイムスタンプを検証するために実行した手順は次のとおりです。

1)タイムスタンプタグを抽出し、使用されている名前空間を追加して、ファイルに書き込みます。

2)xmllintを使用して正規化します

3)opensslを使用して、ファイルのSHA-1ダイジェストを取得します

4)タイムスタンプ参照(jGZkqCNLTnUfbdpoFn19LSYkhts =)のbase64 DigestValueをuudecodeし、16進エディターで開きます

5)DigestValueのバイナリ値は、正規化されたxmlピースのsha1とは異なります。

私は何が間違っているのですか?

完全なSOAPリクエストは次のとおりです。

0 投票する
2 に答える
100 参照

http - 検索ボットの URI を比較しますか?

検索ボットについては、次のような設計に取り組んでいます:
* URI を比較し、
* どの URI が実際に同じページであるかを判断する

リダイレクトとエイリアスの処理:
ケース 1: リダイレクト
ケース 2: エイリアス 例: www
ケース 3: URL パラメータ 例: sukshma.net/node#parameter

従うことができる 2 つのアプローチがあります。1 つのアプローチは、ケース 1 をキャッチするためにリダイレクトを明示的にチェックすることです。もう 1 つのアプローチは、www などのエイリアスを「ハード コード」することで、ケース #2 で機能します。2 番目のアプローチ (ハードコード) のエイリアスは脆弱です。HTTP の URL 仕様では、エイリアスとしての www の使用について言及されていません (RFC 2616)

また、Canonical Meta-tag (HTTP/HTML) を使用するつもりですが、それを正しく理解していれば、すべての場合にタグがあるとは限りません。

あなた自身の経験を共有してください。検索ボットで重複を検出するためのリファレンス ホワイト ペーパーの実装を知っていますか?

0 投票する
2 に答える
2157 参照

code-analysis - CAT.NET「ファイル システム ルーチンに渡す前にファイル パスをサニタイズしてください」メッセージ

CAT.NET コード分析でコード (C#、デスクトップ アプリケーション) を分析していますが、ファイル名を処理するときに「ファイル パスをファイル システム ルーチンに渡す前にサニタイズしてください」というメッセージが表示されます。私が理解していないのは、ファイル名が有効であることを確認するために、次を使用することです。

無効なファイル名の問題を解決するのは「魔法の解決策」ではないでしょうか? ここで似たようなものを読みました(最初の回答)が、私の場合、ローカルファイルのみを扱っているので、非常に基本的なものです...

では、なぜこのメッセージが表示されるのでしょうか?また、表示されないようにするにはどうすればよいでしょうか?

0 投票する
2 に答える
4648 参照

php - 適切なXML排他的正規化はどれですか?

xmlseclibsを使用してSOAPドキュメントに署名しようとしていますが、署名するか検証するかによって、同じように正規化されていないようです。

例を挙げましょう。これは私が署名しようとしているXMLです:

公開鍵と秘密鍵の証明書の組み合わせを使用して署名するためにPHPで動作するコードを取得しましたが、動作しているように見えました。それはすべての適切なもので要素を追加しました<ds:Signature>、そしてそれは素晴らしく見えました。しかし、署名後すぐにxmlseclibs(および公開鍵証明書)を使用して検証を試みてテストしましたが、検証に失敗しました。したがって、まったく同じコードライブラリが署名と検証の両方を実行しますが、2つのプロセスは何らかの理由で一致しません。

xmlseclibsにデバッグコードを追加して、それが何をしているのかを調べました。署名キーと検証キーが異なる理由は、2つの状況で正規化が異なるためであることに気付きました。要素に署名するように指示すると<samlp:Response>、これは署名する標準形になります(読みやすくするためにここに改行を追加しました)。

ただし、署名を検証する場合、これは検証のために計算する標準形です(ここでも、改行を追加しました)。

ご覧のとおり、このバージョンxmlns:samlでは要素から属性が省略されていますが<samlp:Response>、最初のバージョンでは省略されていません。(これは、両方に含まれている属性とは異なることに注意してくださいxmlns:samlp。)これはxmlseclibsのバグのように見えますが、それでも、どちらの標準形が正しいかを知っていれば、自分で修正できれば幸いです。 。その属性は、排他的な正規化によって省略されるべきですか?それとも含める必要がありますか?正しい排他的な標準形はどれですか?

0 投票する
1 に答える
4916 参照

wordpress - Wordpressの自動生成された「正規」リンク-カスタムURLパラメータを追加する方法は?

Wordpressの正規リンクを変更してカスタムURLパラメーターを追加する方法を知っている人はいますか?

別の(Wordpress以外の)データベースを照会するページがあるWordpressサイトがあります。個々の本を表示するためにURLパラメータ「pubID」を渡しましたが、正常に機能しています。

例:http ://www.uglyducklingpresse.org/catalog/browse/item/?pubID = 63

しかし、個々の本のページがGoogleに正しく表示されていません。?pubIDパラメーターが削除されています。

これは、すべてのアイテムページのソースに同じ自動生成された「正規」URLリンクタグが含まれているためだと思います。1つは「pubID」パラメータが削除されています。

例:link rel ='canonical' href =' http: //www.uglyducklingpresse.org/catalog/browse/item/ '

.htaccessを編集してカスタムURLパラメーターをWordpressに追加し、パラメーターがパーマリンクや「正規」リンクによって削除されないようにする方法はありますか?

または、別の解決策があるかもしれません...アイデアをありがとう!

0 投票する
1 に答える
1350 参照

java - Stax XML オブジェクトを正規化する方法

DOMで実行しているプログラムであるStaxオブジェクトをCanonicalizeしたいのですが、DOMは大きなXMLドキュメント(1GBなど)を管理できないため、STAXが解決策です。

私が持っているコードは次のとおりです。

Staxで以下のコードを実行するという考え...

どうも :)

0 投票する
2 に答える
797 参照

windows - Windows: ファイルを特別なフォルダに正規化する方法は?

ユーザーのいくつかのファイル名を保持したい (最近のファイルなど)。

6 つのサンプル ファイルを使用してみましょう。

  • c:\Documents & Settings\Ian\My Documents\Budget.xls
  • c:\Documents & Settings\Ian\My Documents\My Pictures\Daughter's Winning Goal.jpg
  • c:\Documents & Settings\Ian\Application Data\uTorrent
  • c:\Documents & Settings\All Users\Application Data\Consonto\SpellcheckDictionary.dat
  • c:\Develop\readme.txt
  • c:\Program Files\Adobe\Reader\WhatsNew.txt

私は今、特別なフォルダへのパスをハードコーディングしています。ユーザーがフォルダーをリダイレクトしたり、別のコンピューターにローミングしたり、オペレーティング システムをアップグレードしたりすると、パスが壊れます。

私は良い開発者になりたいと思っており、これらのハードコードされた絶対パスを適切な特別なフォルダーからの相対パスに変換します:

  • %CSIDL_Personal%\Budget.xls
  • %CSIDL_MyPictures%\Daughter's Winning Goal.jpg
  • %CSIDL_AppData%\uTorrent
  • %CSIDL_Common_AppData%\Consonto\SpellcheckDictionary.dat
  • c:\Develop\readme.txt
  • %CSIDL_Program_Files%\Adobe\Reader\WhatsNew.txt

問題は、同じファイルに対して複数の表現が存在する可能性があるという事実に伴います。たとえば、次のようになります。

  • c:\Documents & Settings\Ian\My Documents\My Pictures\Daughter's Winning Goal.jpg
  • %CSIDL_Profile%\My Documents\My Pictures\Daughter's Winning Goal.jpg
  • %CSIDL_Personal%\My Pictures\Daughter's Winning Goal.jpg
  • %CSIDL_MyPictures%\Daughter's Winning Goal.jpg

Windows XP では、マイ ピクチャは次の場所に保存されること にも注意してくださいMy Documents

しかし、Vista/7 ではこれらは別のものです。

注:構文 %CSIDL_xxx%\filename.extが無効であることは認識しています。Windows はこれらのキーワードを環境文字列のように展開しません。私はこの質問をする方法としてのみ使用しています。CSIDL 内部的には、おそらく親 とパスの末尾として、明らかにアイテムを別の方法で保存します。

問題は、正規の特別なフォルダーへの相対パスを可能な限りどのように使用するかということです。


考えている:

こちらもご覧ください

0 投票する
4 に答える
8302 参照

c# - C# で XmlDsigC14NTransform クラスを使用する方法

System.Security.Cryptography.Xml.XMLDsigC14nTransformc# .net Framework 2.0 のクラスを使用して、xml ノードを正規化しようとしています。

このインスタンスは、NodeList、Stream、および XMLDocument の 3 つの異なる入力タイプを想定しています。これらすべての入力タイプで変換を試みましたが、異なる結果が得られました。私が本当にやりたいことは、単一のノードを正規化することですが、出力ファイルでわかるように、出力には内部の xml が含まれていません。

XML ノードを正規化する適切な方法についての提案は、非常に高く評価されています。一番、

sign.xml

Child1.xml

doc.xml

ms.xml

ms2.xml