2018年11月7日水曜日

Node-RED で簡単に Crypto を利用する方法(LINE の Bot とかで)

下記のノードを追加するだけで Crypto モジュールが使えるようになります。
settings.js(bluemix-settings.js)を書き換える必要はないです。

node-red-contrib-crypto-js

HMAC の MD5 とか SHA-2 とか使いたいぜ!ってときにサッと使えて便利です。(Encode と Decode が使い難いけどw)

LINE の X-Line-Signature 検証での利用例

そもそも必須じゃない処理を意地でも Node-RED でやろうという奇特な方向けの情報ですw
※LINE WORKSだと「X-WORKS-Signature」

LINE の改ざん検証用署名「X-Line-Signature」の検証方法

ニッチなので雑ですが、これでいけます↓
意地でもノードを使うの図
function ノードを使えばもっと簡単にできるところを、あえてノードを駆使してみましたw
ポイントは decode ノードの設定を Hex にしておくことです。
それ以外だと異なる値になります。

JSON 貼ると化けるブログなので、上の図を参考に各々頑張ってくださいw

settings.js を書き換える方法

ちなみに下記のようにすることで、function ノード内で crypto を利用することも可能になります。

1.settings.js の functionGlobalContext に追記
functionGlobalContext: {
  crypto: require( "crypto" )
},
2.Node-RED 再起動
3.function ノードで利用
const crypto = global.get('crypto');
上記ノードには含まれていない機能を利用したいときは、この方法にしましょう。

0 件のコメント:

コメントを投稿