ExtendscriptでMD5なんか…

今月は短いのですが既に1/3近くが経過しています。きっと皆様多忙でしょう。こんな時に何ですが、全く役に立たないものを流しておきましょう。
Extendscriptでスクリプトを作成して配布等を行う場合、必須のユーザー管理などが結構手間になります。それはExtension等でも同じことで、特に販売する物等に関しては意図しない拡散を防ぐためにDRMの実装が必須となります。
そこで必要なのがユーザー個々の識別で、これについてはExtendscriptをりようすると幾つかの個人情報が得られるのですが、それをそのまんまネット経由でDRMサーバー等に流すという暴挙は絶対にやってはいけないことです。
そこで、その個人情報を基にした情報を作ってHTTPS等の暗号化した通信経由で流すことを考える必要があるわけです。

今回のものは一般にはなじまないものです。主にCoderの方が参考にするものです。実際にわたしが利用するコードは掲載しませんが、DRM実装等で欲しい方はご連絡下さい。
今回はベースになる技術の解説だけやっておきましょう。

function MD5(str){
    var sc= “@JSXBIN@ES@2.0@MyBbyBnABMAbyBn0ACJAnABjzEjEjHjTjUBfWzGiPjCjKjFjDjUChAzBjHDAREFdH”
        + “FdMFdRFdWfzBjIEAREFdFFdJFdOFdUfzBjJFAREFdEFdLFdQFdXfzBjKGAREFdGFdKFdPFdVfzBiSHA”
        + “RiAFdkAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdA”
        + “FdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAF”
        + “dAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAFdAfzBjTIAnzBiGJAnzBjMKAnzBjWLAnzBiEMAnzBiMN”
        + “NyBnAMAbyBn0ABZAnAEXzBiBOfezEjUjIjJjTPfRCEXzBjNQfePfRCVzBjFRfAVDfBffEXQfePfRCCz”
        + “BhGSEXzBjXTfePfRBVRfAffnnd80AnAnfnfnfnPiBVzBjBUfCffffADD4B0AhAR40BhAU4C0AhAD0Az”
        + “AVCAzBiOWNyBnAMAbyBn0ABZAnABjzDjBjOjTXfEXOfePfRCEXQfePfRCVRfAVUfCffEXQfePfRCVDf”
        + “BCSEXTfePfRBVUfCffnnd80AnAnfnfnfnPiBffffnfADD4B0AhAR40BhAU4C0AhAD0AVCAzBiPYNyBn”
        + “AMAbyBn0ABZAnAEXzBiCZfePfRCEXZfePfRCVRfAVDfBffVUfCffADD4B0AhAR40BhAU4C0AhAD0AVC”
        + “AzBiQgaNyBnAMAbyBn0ABZAnAEXZfePfRCVDfBEXOfePfRCVRfACSEXTfePfRBVUfCffnnd80AnAnfn”
        + “fnfnPiBffffADD4B0AhAR40BhAU4C0AhAD0AVCAzBjVgbNyBnAMAbyBn0ABZBnACzBhLgcCzBhFgdCz”
        + “BhKgeVRfAEXzDjQjPjXgffjzEiNjBjUjIhAfRCFdCVDfBffnnnnd80EnQiBEXzFjGjMjPjPjShBfjhA”
        + “fRBCzBhPhCVRfAEXgffjhAfRCFdCCzBhNhDnVDfBdhAnffnnffnnACD4B0AhAR40BhAC0AVCBUNyBnA”
        + “MBbyBn0ABZBnACgdCgcEXgbfePfRCCgdCgcCgcCgcVRfAEXNfePfRDVDfBVUfCVzBjChEfDffnnVzBj”
        + “DhFfEnnVzBjGhGfGnnnnd80EnQiBVzBjEhHfFffVDfBnnnnd80EnQiBAHhG4G0AhAD4B0AhAhH4F0Ah”
        + “AR40BhAU4C0AhAhE4D0AhAhF4E0AhAH0AVCBhENyBnAMBbyBn0ABZBnACgdCgcEXgbfePfRCCgdCgcC”
        + “gcCgcVRfAEXWfePfRDVDfBVUfCVhEfDffnnVhFfEnnVhGfGnnnnd80EnQiBVhHfFffVDfBnnnnd80En”
        + “QiBAHhG4G0AhAD4B0AhAhH4F0AhAR40BhAU4C0AhAhE4D0AhAhF4E0AhAH0AVCBhFNyBnAMBbyBn0AB”
        + “ZBnACgdCgcEXgbfePfRCCgdCgcCgcCgcVRfAEXYfePfRDVDfBVUfCVhEfDffnnVhFfEnnVhGfGnnnnd”
        + “80EnQiBVhHfFffVDfBnnnnd80EnQiBAHhG4G0AhAD4B0AhAhH4F0AhAR40BhAU4C0AhAhE4D0AhAhF4”
        + “E0AhAH0AVCBhGNyBnAMBbyBn0ABZBnACgdCgcEXgbfePfRCCgdCgcCgcCgcVRfAEXgafePfRDVDfBVU”
        + “fCVhEfDffnnVhFfEnnVhGfGnnnnd80EnQiBVhHfFffVDfBnnnnd80EnQiBAHhG4G0AhAD4B0AhAhH4F”
        + “0AhAR40BhAU4C0AhAhE4D0AhAhF4E0AhAH0AVCBzBiDhINyBnAMBbyBn0AHJBnAShEBCgdChCXzBhQh”
        + “JfXKfePfnndInndiAnffJyBnABXhJfXKfePfCgcnCgenVDfDdInnnntJCnAUzChGhGhKCzBhchLXhJf”
        + “XKfePfCgenVDfDdInnnPXzBhRhMfXKfePfBtnnJyCnABXhMfXKfePfCgcnCSCzDhehehehNVDfDnndg”
        + “dnndHnnntJyCnASUAChDnVhEfBdiAnnffOyCbyCn0ADJyCnAEXzBiIhOfePfREVhEfBVRfCFdAVUfAf”
        + “fKyCJyCnAEXzBiJhPfePfRDXLfePfVRfCVUfAffAEXhPfePfRDXLfePfXMfePfFdAffChLCgcVUfAnn”
        + “dhfVDfDnnSUACgcnnndiAntfJyCnAShEBndAffACzChchdhQVUfAVDfDnnJyCnASUAndAffJyCnAEXh”
        + “OfePfREVhEfBVRfCVUfAChDVDfDVUfAnnffAED4B0AhAR40BhAU40BiAhE4B0AiACCAVCCzBiNhRNyB”
        + “nAMCbyBn0AGJCnASDBARHnnnnnnnfnftJyCnAEXzBiHhSfePfRDVDfBXKfePfFdIffJyCnASRACgdCh”
        + “CXhJfXKfePfnndInndiAnffJyCnAEXhIfePfRCXHfePfdCzBhehTnVRfAdhYnChDnVRfAdhYnChDnVR”
        + “fAdjYnffJyCnAEXhIfePfRCVDfBFdIffJyCnAEXhSfePfRDXJfePfXLfePfFdQffACD4B0AiAR40BiA”
        + “ACAVCChONyBnAMCbyBn0ABaCJCnABQVfXMfePfCgcVRfBVhFfAnnQVfVDfCCgcVUfDVhFfAnnnfAVhF”
        + “f0AVhEfEByBhLAFD4B0AhAR40BhAU4C0AhAhE4D0AhAhF40BiAEBAVCChPNyBnAMCbyBn0AiGbyCn0A”
        + “FJCnASUAXhJfVRfFnftJyCnAShEBXhMfVRfFnftJyCnAShFCXzBhShUfVRfFnftJyCnAShHDXzBhThV”
        + “fVRfFnftJyCnAShGEEjzFiBjSjSjBjZhWfRBFdQffnftJyCnAEXzBiLhXfePfRDVhGfEVDfGFdiAffJ”
        + “yCnASUAEXUfePfRHVUfAVhEfBVhFfCVhHfDXhJfVhGfEXhJfXDfePfFd80BkPiUnNnKiBffnffJyCnA”
        + “ShHDEXUfePfRHVhHfDVUfAVhEfBVhFfCXhMfVhGfEXhMfXDfePfFd80AmAnKnWYnNiBffnffJDnAShF”
        + “CEXUfePfRHVhFfCVhHfDVUfAVhEfBXhUfVhGfEXhUfXDfePfFd4mbjQhAhEffnffJyDnAShEBEXUfeP”
        + “fRHVhEfBVhFfCVhHfDVUfAXhVfVhGfEXhVfXDfePfFd80AmAmdlZhXnIiBffnffJyDnASUAEXUfePfR”
        + “HVUfAVhEfBVhFfCVhHfDXzBhUhYfVhGfEXhJfXDfePfFd80AnAnVkBlPnOiBffnffJyDnAShHDEXUfe”
        + “PfRHVhHfDVUfAVhEfBVhFfCXzBhVhZfVhGfEXhMfXDfePfFd4hKmGkHiHffnffJyDnAShFCEXUfePfR”
        + “HVhFfCVhHfDVUfAVhEfBXzBhWhafVhGfEXhUfXDfePfFd80AjAmCIGnFiBffnffJyDnAShEBEXUfePf”
        + “RHVhEfBVhFfCVhHfDVUfAXzBhXhbfVhGfEXhVfXDfePfFd80AhAlAmSlInPiBffnffJyDnASUAEXUfe”
        + “PfRHVUfAVhEfBVhFfCVhHfDXzBhYhcfVhGfEXhJfXDfePfFd4mYkYkAjJffnffJyDnAShHDEXUfePfR”
        + “HVhHfDVUfAVhEfBVhFfCXzBhZhdfVhGfEXhMfXDfePfFd80AnAnVkejInBiBffnffJyDnAShFCEXUfe”
        + “PfRHVhFfCVhHfDVUfAVhEfBXzChRhQhefVhGfEXhUfXDfePfFd80AhAjWnLnfnPiBffnffJyDnAShEB”
        + “EXUfePfRHVhEfBVhFfCVhHfDVUfAXzChRhRhffVhGfEXhVfXDfePfFd80AmAnXkahLnBiBffnffJyDn”
        + “ASUAEXUfePfRHVUfAVhEfBVhFfCVhHfDXzChRhSiAfVhGfEXhJfXDfePfFd4hCRkQjLffnffJyDnASh”
        + “HDEXUfePfRHVhHfDVUfAVhEfBVhFfCXzChRhTiBfVhGfEXhMfXDfePfFd80AjAhSOlTnPiBffnffJEn”
        + “AShFCEXUfePfRHVhFfCVhHfDVUfAVhEfBXzChRhUiCfVhGfEXhUfXDfePfFd80AmAjRhImPnEiBffnf”
        + “fJyEnAShEBEXUfePfRHVhEfBVhFfCVhHfDVUfAXzChRhViDfVhGfEXhVfXDfePfFd4hBIlUiJffnffJ”
        + “yEnASUAEXhEfePfRHVUfAVhEfBVhFfCVhHfDXhMfVhGfEXhJfXEfePfFd80AiAlMmEmDnOiBffnffJy”
        + “EnAShHDEXhEfePfRHVhHfDVUfAVhEfBVhFfCXhafVhGfEXhMfXEfePfFd80BjIWInIiBffnffJyEnAS”
        + “hFCEXhEfePfRHVhFfCVhHfDVUfAVhEfBXhffVhGfEXhUfXEfePfFd4iRiaiehGffnffJyEnAShEBEXh”
        + “EfePfRHVhEfBVhFfCVhHfDVUfAXhJfVhGfEXhVfXEfePfFd80AiAnVmYhWnNiBffnffJyEnASUAEXhE”
        + “fePfRHVUfAVhEfBVhFfCVhHfDXhZfVhGfEXhJfXEfePfFd80AlALnCmFnKiBffnffJyEnAShHDEXhEf”
        + “ePfRHVhHfDVUfAVhEfBVhFfCXhefVhGfEXhMfXEfePfFd4iTUiECffnffJyEnAShFCEXhEfePfRHVhF”
        + “fCVhHfDVUfAVhEfBXiDfVhGfEXhUfXEfePfFd80AhAmQhcUnLiBffnffJyEnAShEBEXhEfePfRHVhEf”
        + “BVhFfCVhHfDVUfAXhYfVhGfEXhVfXEfePfFd80BjZjfnanMiBffnffJyEnASUAEXhEfePfRHVUfAVhE”
        + “fBVhFfCVhHfDXhdfVhGfEXhJfXEfePfFd4nGmNnBhBffnffJFnAShHDEXhEfePfRHVhHfDVUfAVhEfB”
        + “VhFfCXiCfVhGfEXhMfXEfePfFd80AmAnanAjGnIiBffnffJyFnAShFCEXhEfePfRHVhFfCVhHfDVUfA”
        + “VhEfBXhVfVhGfEXhUfXEfePfFd80AnAlQlBkanOiBffnffJyFnAShEBEXhEfePfRHVhEfBVhFfCVhHf”
       &n
bsp;+ “DVUfAXhcfVhGfEXhVfXEfePfFd4nNUiaiFffnffJyFnASUAEXhEfePfRHVUfAVhEfBVhFfCVhHfDXiB”
        + “fVhGfEXhJfXEfePfFd80AlAhAjdhcnFiBffnffJyFnAShHDEXhEfePfRHVhHfDVUfAVhEfBVhFfCXhU”
        + “fVhGfEXhMfXEfePfFd80BjfnUkdnPiBffnffJyFnAShFCEXhEfePfRHVhFfCVhHfDVUfAVhEfBXhbfV”
        + “hGfEXhUfXEfePfFd4mZCjPjHffnffJyFnAShEBEXhEfePfRHVhEfBVhFfCVhHfDVUfAXiAfVhGfEXhV”
        + “fXEfePfFd80AiAkRiJlFnBiBffnffJyFnASUAEXhFfePfRHVUfAVhEfBVhFfCVhHfDXhZfVhGfEXhJf”
        + “XFfePfFd80AiAhIiHnfnPiBffnffJyFnAShHDEXhFfePfRHVhHfDVUfAVhEfBVhFfCXhcfVhGfEXhMf”
        + “XFfePfFd80AhAmQhenOnAiBffnffJyFnAShFCEXhFfePfRHVhFfCVhHfDVUfAVhEfBXhffVhGfEXhUf”
        + “XFfePfFd4hCjBkdjNffnffJyFnAShEBEXhFfePfRHVhEfBVhFfCVhHfDVUfAXiCfVhGfEXhVfXFfePf”
        + “Fd80AkABlHlcnPiBffnffJyFnASUAEXhFfePfRHVUfAVhEfBVhFfCVhHfDXhMfVhGfEXhJfXFfePfFd”
        + “80AkAiImdkXnEiBffnffJGnAShHDEXhFfePfRHVhHfDVUfAVhEfBVhFfCXhYfVhGfEXhMfXFfePfFd4”
        + “lJmPmeiLffnffJyGnAShFCEXhFfePfRHVhFfCVhHfDVUfAVhEfBXhbfVhGfEXhUfXFfePfFd80BjMjJ”
        + “mXnOiBffnffJyGnAShEBEXhFfePfRHVhEfBVhFfCVhHfDVUfAXhefVhGfEXhVfXFfePfFd80BkOnXmX”
        + “nHiBffnffJyGnASUAEXhFfePfRHVUfAVhEfBVhFfCVhHfDXiBfVhGfEXhJfXFfePfFd4mGjekbhIffn”
        + “ffJyGnAShHDEXhFfePfRHVhHfDVUfAVhEfBVhFfCXhJfVhGfEXhMfXFfePfFd80AiAnfhEiUnNiBffn”
        + “ffJyGnAShFCEXhFfePfRHVhFfCVhHfDVUfAVhEfBXhVfVhGfEXhUfXFfePfFd80AlAQnGkdnKiBffnf”
        + “fJyGnAShEBEXhFfePfRHVhEfBVhFfCVhHfDVUfAXhafVhGfEXhVfXFfePfFd4FgdkIEffnffJyGnASU”
        + “AEXhFfePfRHVUfAVhEfBVhFfCVhHfDXhdfVhGfEXhJfXFfePfFd80AhAHkahanLiBffnffJyGnAShHD”
        + “EXhFfePfRHVhHfDVUfAVhEfBVhFfCXiAfVhGfEXhMfXFfePfFd80AlAhcjTmbnMiBffnffJyGnAShFC”
        + “EXhFfePfRHVhFfCVhHfDVUfAVhEfBXiDfVhGfEXhUfXFfePfFd4nYjclCgfffnffJyGnAShEBEXhFfe”
        + “PfRHVhEfBVhFfCVhHfDVUfAXhUfVhGfEXhVfXFfePfFd80AlAmMkKkVnIiBffnffJHnASUAEXhGfePf”
        + “RHVUfAVhEfBVhFfCVhHfDXhJfVhGfEXhJfXGfePfFd80AkAiIhEkFnOiBffnffJyHnAShHDEXhGfePf”
        + “RHVhHfDVUfAVhEfBVhFfCXhbfVhGfEXhMfXGfePfFd4kXnfhKiDffnffJyHnAShFCEXhGfePfRHVhFf”
        + “CVhHfDVUfAVhEfBXiCfVhGfEXhUfXGfePfFd80AnAjUkEjSnFiBffnffJyHnAShEBEXhGfePfRHVhEf”
        + “BVhFfCVhHfDVUfAXhZfVhGfEXhVfXGfePfFd80AhAHjUkSnPiBffnffJyHnASUAEXhGfePfRHVUfAVh”
        + “EfBVhFfCVhHfDXiAfVhGfEXhJfXGfePfFd4mDiZibjFffnffJyHnAShHDEXhGfePfRHVhHfDVUfAVhE”
        + “fBVhFfCXhVfVhGfEXhMfXGfePfFd80AiAkSkZnBnBiBffnffJyHnAShFCEXhGfePfRHVhFfCVhHfDVU”
        + “fAVhEfBXhefVhGfEXhUfXGfePfFd80AlAkPnendnPiBffnffJyHnAShEBEXhGfePfRHVhEfBVhFfCVh”
        + “HfDVUfAXhMfVhGfEXhVfXGfePfFd80AhAlakLlQnAiBffnffJyHnASUAEXhGfePfRHVUfAVhEfBVhFf”
        + “CVhHfDXhcfVhGfEXhJfXGfePfFd4iPjelIjPffnffJyHnAShHDEXhGfePfRHVhHfDVUfAVhEfBVhFfC”
        + “XiDfVhGfEXhMfXGfePfFd80BmckcmFnPiBffnffJyHnAShFCEXhGfePfRHVhFfCVhHfDVUfAVhEfBXh”
        + “afVhGfEXhUfXGfePfFd80AkAjChIjAnEiBffnffJInAShEBEXhGfePfRHVhEfBVhFfCVhHfDVUfAXiB”
        + “fVhGfEXhVfXGfePfFd4lBRIiOffnffJyInASUAEXhGfePfRHVUfAVhEfBVhFfCVhHfDXhYfVhGfEXhJ”
        + “fXGfePfFd80AiAmQjPnKnOiBffnffJyInAShHDEXhGfePfRHVhHfDVUfAVhEfBVhFfCXhffVhGfEXhM”
        + “fXGfePfFd80AlAiGielHnHiBffnffJyInAShFCEXhGfePfRHVhFfCVhHfDVUfAVhEfBXhUfVhGfEXhU”
        + “fXGfePfFd4lbmSmXhKffnffJyInAShEBEXhGfePfRHVhEfBVhFfCVhHfDVUfAXhdfVhGfEXhVfXGfeP”
        + “fFd80AhAjSmajQnNiBffnffJyInABXhJfVRfFCgdCgcXhJfVRfFVUfAnnnnd80EnQiBnfJyInABXhMf”
        + “VRfFCgdCgcXhMfVRfFVhEfBnnnnd80EnQiBnfJyInABXhUfVRfFCgdCgcXhUfVRfFVhFfCnnnnd80En”
        + “QiBnfJyInABXhVfVRfFCgdCgcXhVfVRfFVhHfDnnnnd80EnQiBnfAHhG4E0AiAD4B0AhAhH4D0AiAR4”
        + “0BhAU40BiAhE4B0AiAhF4C0AiACFAVCIhXNyBnAMIbyBn0ABKIbyIn0ACJInAShFBCgenVhEfAdEnnf”
        + “fJyInABQVfVRfCVhEfACgcCgcCgcQVfVDfDVhFfBCgenQVfVDfDCgcVhFfBnndBd2ABnnnCgenQVfVD”
        + “fDCgcVhFfBnndCd40ABAnnnCgenQVfVDfDCgcVhFfBnndDd40BBnnnnfAShEAndAffChLCgenVhEfAd”
        + “EnCgcVUfEnndDnnThEABtAFD4B0AhAR40BhAU4C0AhAhE40BiAhF4B0AiADCAVCIhSNyBnAMIbyBn0A”
        + “BKIbIn0AGJInAShFBCgenVhHfCdEnnffJyInAShEAQVfVDfEVhHfCnffJyInABQVfVRfDVhFfBCSVhE”
        + “fAnndnfnfJyInABQVfVRfDCgcVhFfBnndBCSChNVhEfAnndInndnfnfJJnABQVfVRfDCgcVhFfBnndC”
        + “CSChNVhEfAnndQnndnfnfJyJnABQVfVRfDCgcVhFfBnndDCSChNVhEfAnndYnndnfnfARDVhEfAVhFf”
        + “BShHCndAfttChLCgenVhHfCdEnCgcVUfFnndDnnThHCBtAGD4B0AhAhH4C0AiAR40BhAU4C0AhAhE40”
        + “BiAhF4B0AiADDAVCJzBiKiENyBnAMJbyBn0AKJJnABXKfePfARCFdAFdAfnfJyJnABXLfePfAREFd4B”
        + “hDiFjHFd80AhAjRlVnZnNiBFd80AmAkfibXnDiBFd4jWiUhSQfnfJyJnABXMfePfEjhWfRBFdiAffnf”
        + “JyJnABXIfePfAnnfJyJnABXJfePfEjhWfRBFdQffnfJyJnAShHEShECndAffnffJyJnASDAEjzGjFjT”
        + “jDjBjQjFiFfRBVRfFffnffayJOyJbyJn0ACJyJnABQVfXIfePfVhEfCVRfFnfJyJnAThECBtARDSRFE”
        + “XzGjDjIjBjSiBjUiGfVDfARBVUfBffnffdCzChdhdiHnVRfFeBhFnRDSRFCgcEXiGfVDfARBCgcVUfB”
        + “nndBffEXiGfVDfARBCgcVUfBnndCffnnnffSUBCgcnnndCntfSRFEjzIjQjBjSjTjFiJjOjUiIfRCVR”
        + “fFFdQffnfftRCShFDEXzHjJjOjEjFjYiPjGiJfFeiehBhChDhEhFhGhHhIhJhKhLhMhNhOhPhQhRhSh”
        + “ThUhVhWhXhYhZhahbhchdhehfiAiBiCiDiEiFiGiHiIiJiKiLiMiNiOiPiQiRiSiTiUiViWiXiYiZia”
        + “ibiBidieifiBjBjCjDjEjFjGjHjIjJjKjLjMjNjOjPjQjRjSjTjUjVjWjXjYjZjajbjcjdjeRCVRfFF”
        + “dAffnffdChTnVhFfDdAnShHEndBffSRFCgcnVhFfDdhBnnfftCiHnVhHfEdAntDyJnAVtAVUfBAXzGj”
        + “MjFjOjHjUjIiKfVDfAByBhLOyJKyJbyKn0ADJKnASRFCgcnEXzIjUjPiTjUjSjJjOjHiLfQVfXJfePf”
        + “VUfBRBFdQffeBhQnnffJyKnASRFEXzJjTjVjCjTjUjSjJjOjHiMfVRfFRCChDXiKfVRfFnndCXiKfVR”
        + “fFffnffJyKnAShECCgcnVRfFnnntfAREEXhIfePfRCXIfePfXiKfXIfePfffEXhRfePfnfShECneAff”
        + “SUBndAfftChTnVUfBdQnTUBBtACiHnVhHfEdAnJKnAShECneAffZKnAVhEfCAGD40BiAhH4E0AiAR40”
        + “BhAU4B0AiAhE4C0AiAhF4D0AiABFAVCKTNyBnAMKbyBn0ABZKnAEXzBjPiNfePfRCCShzBjeiOCSVRf”
        + “Annd2nfnfnnd2nfnfCShiOCSChNVRfAnndQnnd2nfnfnnd2nfnfffABR40BhAB0AVCKONyBnAMKbyBn”
        + “0ABZKnAEXiNfePfRCCSCSCzBjciPCSVRfAnnd2nfnfVDfBnnnnd2nfnfnnd2nfnfCSCSCiPCSChNVRf”
        + “AnndQnnd2nfnfChNVDfBnndQnnnnd2nfnfnnd2nfnfffACD4B0AhAR40BhAC0AVCKQNyBnAMKbyBn0A”
        + “BZKnAEXiNfePfRCCSCSCSVRfAnnd2nfnfVDfBnnnnd2nfnfCSCSCSChN
VRfAnndQnnd2nfnfChNVDfB”
        + “nndQnnnnd2nfnfffACD4B0AhAR40BhAC0AVCKZNyBnAMKbyBn0ABZKnAEXiNfePfRCCSCSCzBieiQCS”
        + “VRfAnnd2nfnfVDfBnnnnd2nfnfnnd2nfnfCSCSCiQCSChNVRfAnndQnnd2nfnfChNVDfBnndQnnnnd2”
        + “nfnfnnd2nfnfffACD4B0AhAR40BhAC0AVCKiNNyBnAMKbyBn0ABZKnACgcVRfACgenVDfBd40ABAnnn”
        + “ACD4B0AhAR40BhAC0AVCKzEjIjBjTjIiRNyBnAMKbyBn0ABZKnAEXiEfePfRBVzDjTjUjSiSfAffABi”
        + “S40BhAB0AVCKnfZKnAEXiRfjBfRBViSfAffABiS40BhAB0AzGjHjFjUiNiEhViTAK0EVByB”;
        eval(sc);
    return getMD5(str);
    }

はい、こちらがMD5ダイジェストを生成するファンクションです。中の関数は解析の難易度を上げるためにバイナリ書き出しを行ったものをevalすることにより実行します。この様にExtendscriptでは見せたくない関数のみをjsxbinにする事が可能です。
腕に自信のある方は解析を行ってみてください。バイナリ化されたスクリプトを戻せても元のスクリプトもある程度構造が読みにくくなっています。
そうそう、AddOnsですが全く音沙汰なしというwそんなに複雑な動きをするものではありません。まあ、中身はかなり複雑なんですが、さっさと検証済ませてほしいものです。

ten_a

Graphic Designer, Scripter and Coder. Adobe Community Professional.

シェアする

コメントを残す