<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>教程 on 阿珏酱のBlog</title>
    <link>https://zh.moejue.cn/ja/categories/%E6%95%99%E7%A8%8B/</link>
    <description>Recent content from 阿珏酱のBlog</description>
    <generator>Hugo</generator>
    <language>ja</language>
    
    <managingEditor>xxx@example.com (MoeJue)</managingEditor>
    <webMaster>xxx@example.com (MoeJue)</webMaster>
    
    <copyright>本ブログのすべての文書は、特に指定されていない限り、BY-NC-SAライセンスに従っています。引用の際は出典を明記してください！</copyright>
    
    <lastBuildDate>Sat, 06 Sep 2025 02:02:54 +0000</lastBuildDate>
    
    
    <atom:link href="https://zh.moejue.cn/ja/categories/%E6%95%99%E7%A8%8B/index.xml" rel="self" type="application/rss&#43;xml" />
    

    
    

    <item>
      <title>幻想領域 画像アップローダー ヘルプ</title>
      <link>https://zh.moejue.cn/ja/posts/63/</link>
      <pubDate>Mon, 19 Mar 2018 11:56:29 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/63/</guid>
      <description>
        <![CDATA[<h1>幻想領域 画像アップローダー ヘルプ</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>インストールや使用中に問題が発生する方が多いため、ここにまとめます。それでも解決しない場合は、グループに参加して万能なメンバーに質問してください。</p>
<h2 id="認証コードが表示されない">
<a class="header-anchor" href="#%e8%aa%8d%e8%a8%bc%e3%82%b3%e3%83%bc%e3%83%89%e3%81%8c%e8%a1%a8%e7%a4%ba%e3%81%95%e3%82%8c%e3%81%aa%e3%81%84"></a>
認証コードが表示されない
</h2><ol>
<li>サーバーがGDグラフィックライブラリをサポートしているか確認してください。</li>
<li>サーバーのWEB環境を確認してください。</li>
</ol>
<ul>
<li>Apache：プログラムがサブディレクトリにインストールされている場合、プログラムのルートディレクトリにある<code>.htaccess</code>ファイルを変更してください。</li>
</ul>
<p>&lt;IfModule mod_rewrite.c&gt;
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
Rewritebase /あなたのサブディレクトリ名/index.php
RewriteRule ^(.*)$ /あなたのサブディレクトリ名/index.php?/$1 [L]
</IfModule></p>
<ul>
<li>Nginx：設定ファイル<code>nginx-conf</code>を見つけ、<code>location /</code>セクションに以下の内容を追加・変更してください。</li>
</ul>
<pre tabindex="0"><code>try_files $uri $uri/ /index.php?$query_string;
</code></pre><p>またはこちら</p>
<pre tabindex="0"><code>if (!-d $request_filename){
    set $rule_0 1$rule_0;
}
if (!-f $request_filename){
    set $rule_0 2$rule_0;
}
if ($rule_0 = &#34;21&#34;){
    rewrite ^/(.*)$ /index.php?/$1 last;
}
</code></pre><ul>
<li>IISのURLリライトはApacheと同様です。</li>
<li>宝塔パネル（BT Panel）を使用している場合は、既存のthinkPHPのURLリライト設定を使用してください。</li>
</ul>
<p><strong>メール送信の失敗</strong></p>
<ol>
<li>まず、ポート25がブロックされていないか確認してください。ブロックされている場合は、ホスティングプロバイダーに有効化を依頼してください（有効化できない場合はサーバーを変更してください）。</li>
<li>登録時の認証をオフにするか、次のバージョンの更新をお待ちください（注：ポートの変更は無意味です。ポート465はSSLサポートが必要です）。</li>
</ol>
<h2 id="データインターフェースの異常">
<a class="header-anchor" href="#%e3%83%87%e3%83%bc%e3%82%bf%e3%82%a4%e3%83%b3%e3%82%bf%e3%83%bc%e3%83%95%e3%82%a7%e3%83%bc%e3%82%b9%e3%81%ae%e7%95%b0%e5%b8%b8"></a>
データインターフェースの異常
</h2><ul>
<li>URLリライトのリダイレクトに失敗しています。上記を参考にもう一度設定してください。</li>
<li>Nginxサーバーの場合、<code>/framework/core/Framework.php</code>の51行目から53行目をコメントアウトまたは削除してください。具体的なコードは以下の通りです（通常、この問題はApacheサーバーでは発生せず、Nginxサーバーでのみ発生します）。</li>
</ul>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-php" data-lang="php"><span style="display:flex;"><span><span style="color:#66d9ef">if</span> ($path <span style="color:#f92672">!=</span> <span style="color:#e6db74">&#39;&#39;</span>) {
</span></span><span style="display:flex;"><span>     $path <span style="color:#f92672">=</span> <span style="color:#a6e22e">strstr</span>(<span style="color:#a6e22e">trim</span>($_SERVER[<span style="color:#e6db74">&#39;REQUEST_URI&#39;</span>],<span style="color:#e6db74">&#39;/&#39;</span>),$path);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><h2 id="画像のアップロード失敗">
<a class="header-anchor" href="#%e7%94%bb%e5%83%8f%e3%81%ae%e3%82%a2%e3%83%83%e3%83%97%e3%83%ad%e3%83%bc%e3%83%89%e5%a4%b1%e6%95%97"></a>
画像のアップロード失敗
</h2><p>アップロード失敗時のヒント：アップロード中にちょっとした問題が発生しました。コントローラーを開いて原因を確認してください！</p>
        
        <hr><p>この記事は2018-03-19に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2025-09-06です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>Web3.0とは何か？ブロックチェーンとの関係は？</title>
      <link>https://zh.moejue.cn/ja/posts/202/</link>
      <pubDate>Mon, 17 Jun 2024 12:59:22 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/202/</guid>
      <description>
        <![CDATA[<h1>Web3.0とは何か？ブロックチェーンとの関係は？</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>また一つ、よくわからない言葉が出てきましたね-_-。以下に要点をまとめてみました。</p>
<h2 id="web30とは何か">
<a class="header-anchor" href="#web30%e3%81%a8%e3%81%af%e4%bd%95%e3%81%8b"></a>
web3.0とは何か
</h2><p>Web 3.0（Web3）は、次世代のインターネットの発展方向であり、より分散化され、ユーザーがコントロールし、データが保護されるネットワーク環境を構築することを目指しています。これまでのWeb 1.0（静的なウェブページ）やWeb 2.0（動的でインタラクティブなウェブページやソーシャルメディア）とは異なり、Web 3.0の核心的な理念と技術には以下の側面が含まれます。</p>
<h3 id="非中央集権化">
<a class="header-anchor" href="#%e9%9d%9e%e4%b8%ad%e5%a4%ae%e9%9b%86%e6%a8%a9%e5%8c%96"></a>
非中央集権化：
</h3><ul>
<li>ブロックチェーン技術：Web 3.0の核心はブロックチェーン技術であり、すべての取引やデータの変更を記録する分散型台帳を提供します。これは、データが単一の中央サーバーによって管理されるのではなく、複数のノードに分散されることを意味します。</li>
<li>分散型アプリケーション（DApps）：これらのアプリケーションはブロックチェーンネットワーク上で実行され、中央集権的な管理者が存在しません。DAppsのユーザーは、仲介機関を介さずに直接取引や対話を行うことができます。</li>
</ul>
<h3 id="ユーザーコントロールとデータ保護">
<a class="header-anchor" href="#%e3%83%a6%e3%83%bc%e3%82%b6%e3%83%bc%e3%82%b3%e3%83%b3%e3%83%88%e3%83%ad%e3%83%bc%e3%83%ab%e3%81%a8%e3%83%87%e3%83%bc%e3%82%bf%e4%bf%9d%e8%ad%b7"></a>
ユーザーコントロールとデータ保護：
</h3><ul>
<li>自己主権型アイデンティティ：Web 3.0では、ユーザーは自身のデジタルアイデンティティとデータを完全にコントロールできます。暗号技術を通じて、ユーザーは誰が自分のデータにアクセスできるか、またそのデータをどのように使用するかを決定できます。</li>
<li>データ所有権：ユーザーのデータは分散型ネットワーク上に保存され、大手企業による集中管理ではなく、ユーザー自身がデータの所有権を持ちます。</li>
</ul>
<h3 id="スマートコントラクト">
<a class="header-anchor" href="#%e3%82%b9%e3%83%9e%e3%83%bc%e3%83%88%e3%82%b3%e3%83%b3%e3%83%88%e3%83%a9%e3%82%af%e3%83%88"></a>
スマートコントラクト：
</h3><ul>
<li>自動実行プロトコル：スマートコントラクトは、ブロックチェーン上で実行される自動化されたプロトコルであり、特定の条件が満たされると自動的に実行されます。この技術は、金融取引、サプライチェーン管理、法的な契約など、さまざまなシーンで利用できます。</li>
<li>相互運用性：Web 3.0は、異なるブロックチェーンや分散型ネットワーク間の相互運用性を実現し、データや資産が異なるプラットフォーム間でシームレスに移動できるようにすることを目指しています。</li>
</ul>
<h3 id="トラストレスと透明性">
<a class="header-anchor" href="#%e3%83%88%e3%83%a9%e3%82%b9%e3%83%88%e3%83%ac%e3%82%b9%e3%81%a8%e9%80%8f%e6%98%8e%e6%80%a7"></a>
トラストレスと透明性：
</h3><ul>
<li>トラストレスなメカニズム：Web 3.0はブロックチェーン技術を通じてトラストレスなメカニズムを実現します。つまり、参加者はお互いを信頼したり、第三者の仲介者に依存したりすることなく、安全な取引や対話を行うことができます。</li>
<li>透明性：すべての取引やデータの変更はブロックチェーン上に記録され、公開され透明であり、改ざん不可能です。これにより、信頼性とセキュリティが向上します。</li>
</ul>
<h3 id="web-30の応用シーン">
<a class="header-anchor" href="#web-30%e3%81%ae%e5%bf%9c%e7%94%a8%e3%82%b7%e3%83%bc%e3%83%b3"></a>
Web 3.0の応用シーン
</h3><ol>
<li>分散型金融（DeFi）：スマートコントラクトとブロックチェーン技術を通じて、貸付、取引、投資などの仲介者を必要としない金融サービスを提供します。</li>
<li>デジタルアイデンティティ：ユーザーは自身のデジタルアイデンティティを作成・管理し、個人データのアクセスと使用をコントロールできます。</li>
<li>サプライチェーン管理：ブロックチェーン技術を通じて、サプライチェーンの透明性と追跡可能性を実現し、偽造や詐欺を防止します。</li>
<li>コンテンツ制作と配信：アーティスト、ミュージシャン、作家は、直接視聴者と対話し取引を行うことで、より公平な収益分配を得ることができます。</li>
</ol>
<h2 id="ではブロックチェーンとは何か">
<a class="header-anchor" href="#%e3%81%a7%e3%81%af%e3%83%96%e3%83%ad%e3%83%83%e3%82%af%e3%83%81%e3%82%a7%e3%83%bc%e3%83%b3%e3%81%a8%e3%81%af%e4%bd%95%e3%81%8b"></a>
では、ブロックチェーンとは何か？
</h2><p>ブロックチェーン技術は、分散型台帳技術（Distributed Ledger Technology, DLT）の一種であり、取引や情報を記録するための改ざん不可能で非中央集権的なデータベースです。ブロックチェーン技術の核心的な考え方は、非中央集権的な方法でデータの安全性、透明性、信頼性を実現することです。</p>
<h3 id="ブロックチェーンの基本原理">
<a class="header-anchor" href="#%e3%83%96%e3%83%ad%e3%83%83%e3%82%af%e3%83%81%e3%82%a7%e3%83%bc%e3%83%b3%e3%81%ae%e5%9f%ba%e6%9c%ac%e5%8e%9f%e7%90%86"></a>
ブロックチェーンの基本原理
</h3><ol>
<li>
<p>ブロック（Block）：</p>
<ul>
<li>ブロックは取引記録を含むデータパッケージです。各ブロックには複数の取引と、そのブロックを一位に識別するためのハッシュ値が含まれています。</li>
<li>ブロックには前のブロックのハッシュ値も含まれており、これによりすべてのブロックが鎖のようにつながり、ブロックチェーンを形成します。</li>
</ul>
</li>
<li>
<p>チェーン（Chain）：</p>
<ul>
<li>ブロックはハッシュ値によって相互に連結され、チェーン構造を形成します。各ブロックが前のブロックのハッシュ値を含むため、ブロックチェーン内のデータを改ざんすることは非常に困難です。</li>
<li>あるブロックのデータを変更しようとすると、そのブロックおよびそれに続くすべてのブロックのハッシュ値が変化するため、これらすべてのブロックのハッシュ値を再計算する必要があり、これはほぼ不可能です。</li>
</ul>
</li>
<li>
<p>非中央集権化（Decentralization）：</p>
<ul>
<li>ブロックチェーンネットワーク内のすべてのノード（コンピュータ）は、ブロックチェーンの完全なコピーを保持しており、これらのコピーはコンセンサスメカニズムによって一貫性が保たれています。</li>
<li>中央機関がブロックチェーンを管理・制御することはなく、データはすべてのノードによって共同で維持されます。</li>
</ul>
</li>
<li>
<p>コンセンサスメカニズム（Consensus Mechanism）：</p>
<ul>
<li>ブロックチェーンネットワークは、すべてのノードがブロックチェーンの状態について合意に達することを保証するためにコンセンサスメカニズムを使用します。一般的なコンセンサスメカニズムには、プルーフ・オブ・ワーク（Proof of Work, PoW）やプルーフ・オブ・ステーク（Proof of Stake, PoS）があります。</li>
<li>プルーフ・オブ・ワーク（PoW）：マイナーが複雑な数学的問題を解くことで取引を検証し、ブロックチェーンに追加します。問題を解くには大量の計算能力が必要であり、これによりブロックチェーンのセキュリティが確保されます。</li>
<li>プルーフ・オブ・ステーク（PoS）：バリデーターが保有する暗号資産の量やその他の要因に基づいて取引を検証し、それに応じた報酬を得ます。</li>
</ul>
</li>
<li>
<p>暗号技術（Cryptography）：</p>
        
        <hr><p>この記事は2024-06-17に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2025-07-06です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>Git の簡単な使用手順</title>
      <link>https://zh.moejue.cn/ja/posts/64/</link>
      <pubDate>Tue, 03 Apr 2018 12:04:32 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/64/</guid>
      <description>
        <![CDATA[<h1>Git の簡単な使用手順</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>この記事では概念的な知識については詳しく説明しません。ただのメモです。これは単なるステップバイステップのガイドです。障害に遭遇した場合は、Google で調べてください。</p>
<ul>
<li>SSH を使用して Git と GitHub 間のバインドを完了します</li>
</ul>
<p>1\。 「SSHキー」を生成する</p>
<p>ssh-keygen-trsa</p>
<p>RSA アルゴリズムを指定してキーを生成すると、id_rsa と id_rsa.pub という 2 つのファイル、つまりキー id_rsa と公開キー id_rsa.pub が生成されます。これら 2 つのファイルについては、</p>
<p>2\。 SSHキーを追加する
github.com -&gt; 設定 -&gt; SSH と GPG -&gt; 新しい SSH キー
公開キー id_rsa.pub の内容をキーの場所に貼り付け (タイトルの内容を入力しなくても問題ありません)、[SSH キーの追加] をクリックします。</p>
<p>3\。バインドが成功したかどうかを確認する</p>
<p>ssh -T <a href="mailto:git@github.com">git@github.com</a></p>
<ul>
<li>ローカルプロジェクトをgithubにプッシュするコマンド</li>
</ul>
<p>(1) ディレクトリを開きます</p>
<p>CDデモ</p>
<p>(2) gitファイルを生成するためにバージョンライブラリを初期化する</p>
<p>gitの初期化</p>
<p>(3) 全ファイルをキャッシュ領域に追加</p>
<p>git add *</p>
<p>(4) 現在のワークスペースに変更を送信します。</p>
<p>git commit -m &ldquo;最初のコミット&rdquo;</p>
<p>(5) 倉庫をリモートサーバーに接続する</p>
<p>git Remote addorigin <server> (上記のウェアハウスのアドレスです)</p>
<p>(6) 追加したサーバーに変更をプッシュします</p>
        
        <hr><p>この記事は2018-04-03に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2025-06-02です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>[メモ] Git よく使うコマンド大全（シーン別）</title>
      <link>https://zh.moejue.cn/ja/posts/264/</link>
      <pubDate>Mon, 02 Jun 2025 06:58:42 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/264/</guid>
      <description>
        <![CDATA[<h1>[メモ] Git よく使うコマンド大全（シーン別）</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <blockquote>
<p>日常の開発でよく使われるGitの操作をまとめたものです。カテゴリ別に整理されているため、すぐに使い始めたい方や、コマンドを確認したい時に役立ちます。</p>
</blockquote>
<hr>
<h2 id="-基本コマンド">
<a class="header-anchor" href="#-%e5%9f%ba%e6%9c%ac%e3%82%b3%e3%83%9e%e3%83%b3%e3%83%89"></a>
📦 基本コマンド
</h2><p>コマンド</p>
<p>役割</p>
<p><code>git init</code></p>
<p>Gitリポジトリを初期化します（<code>.git</code>フォルダを作成）。</p>
<p><code>git clone &lt;url&gt;</code></p>
<p>リモートリポジトリをローカルにクローンします。</p>
<p><code>git status</code></p>
<p>現在のワーキングディレクトリの状態（ファイルの変更、ステージングなど）を確認します。</p>
<p><code>git add &lt;file&gt;</code></p>
<p>ファイルをステージングエリアに追加します。</p>
<p><code>git commit -m &quot;message&quot;</code></p>
<p>ステージングエリアのファイルをローカルリポジトリにコミットし、コミットメッセージを追加します。</p>
<p><code>git log</code></p>
<p>コミット履歴を表示します。</p>
<hr>
<h2 id="-ブランチ管理">
<a class="header-anchor" href="#-%e3%83%96%e3%83%a9%e3%83%b3%e3%83%81%e7%ae%a1%e7%90%86"></a>
🌱 ブランチ管理
</h2><p>コマンド</p>
<p>役割</p>
<p><code>git branch</code></p>
<p>ローカルブランチの一覧を表示します。</p>
<p><code>git branch &lt;branch-name&gt;</code></p>
<p>新しいブランチを作成します。</p>
<p><code>git checkout &lt;branch-name&gt;</code></p>
<p>指定したブランチに切り替えます。</p>
<p><code>git switch &lt;branch-name&gt;</code></p>
<p>指定したブランチに切り替えます（推奨される新しいコマンド）。</p>
<p><code>git merge &lt;branch-name&gt;</code></p>
<p>指定したブランチを現在のブランチにマージします。</p>
<p><code>git branch -d &lt;branch-name&gt;</code></p>
<p>マージ済みのブランチを削除します。</p>
<p><code>git branch -D &lt;branch-name&gt;</code></p>
<p>ブランチを強制的に削除します。</p>
<hr>
<h2 id="-リモートリポジトリ操作">
<a class="header-anchor" href="#-%e3%83%aa%e3%83%a2%e3%83%bc%e3%83%88%e3%83%aa%e3%83%9d%e3%82%b8%e3%83%88%e3%83%aa%e6%93%8d%e4%bd%9c"></a>
🌍 リモートリポジトリ操作
</h2><p>コマンド</p>
<p>役割</p>
<p><code>git remote -v</code></p>
        
        <hr><p>この記事は2025-06-02に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2025-06-02です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>投稿者は誰？</title>
      <link>https://zh.moejue.cn/ja/posts/68/</link>
      <pubDate>Mon, 25 Jun 2018 07:53:09 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/68/</guid>
      <description>
        <![CDATA[<h1>投稿者は誰？</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>私が最初にWeiboのクラウドストレージを二次元ランダムAPIの画像ストレージとして使用して以来、ネット上には多くの類似した二次元ランダムAPIが派生しました。私が知っているものの中からいくつかを選んでアクセスしてみたところ、多くの画像が非常によく見知ったものでした。しかも、画像リンクは私のデータベースでも見つかるのです。これって、私がアップロードしたものじゃないですか？
彼らは皆、私のものを収集しているのでしょうか？
もちろん、口頭だけでは証拠になりません。根拠が必要です。
そこで、私が知っている10個のAPIインターフェースを選びました。これらはすべてSina画像ホスティングに保存されている二次元APIです。サーバーに接続して一晩中収集したところ、約10万枚の画像を収集しました。重複や無効なものをフィルタリングした後、約1万枚が残りました。驚くべきことに、これは10個のインターフェースのデータが基本的に同じであることを示しています。
次に、プログラムを使ってリンクのアップロード者を分析したところ、この1万枚のうち75%の画像が幻想領域画像ホスティングからのものでした。
Sina画像アドレスからSinaユーザーを特定することは、もはや秘密ではありませんが。
<a href="https://sandbox.runjs.cn/show/fx9b4hyv">オンラインデモアドレス</a> これはJSバージョンで、コードは右クリックで直接取得できます。
特定することで、API内の大量の画像が幻想領域画像ホスティングのWeiboアップロード、つまり私自身がアップロードしたものであることがわかります。それらのいわゆるAPIが私のものを盗用しているかどうかは、彼ら自身がよく知っているでしょう。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/25/0072Vf1pgy1fsnjxvkx9jj30fv08i0zn.jpg" alt="">
原理の解明：
現在登録されているWeiboアカウントのUIDは非常に大きいため、アップロードされる画像は基本的に007で始まります。そのため、以下の画像は私がWeiboで適当に古いアカウントからコピーしてきたものです。
リンクは <a href="https://wxt.sinaimg.cn/thumb300/9d0d09ably1fsn7m0jyzzj20m80cidgm.jpg">https://wxt.sinaimg.cn/thumb300/9d0d09ably1fsn7m0jyzzj20m80cidgm.jpg</a> の画像</p>
<p>ファイル名 9d0d09ably1fsn7m0jyzzj20m80cidgm を抽出し、最初の8桁 9d0d09ab を16進数で変換すると 2634877355 になります。これがユーザーのUIDです。
そして、Weiboユーザーのホームページアドレス:https://weibo.com/u/+uid に連結します。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/25/0072Vf1pgy1fsni85dka6j30ik06wjrb.jpg" alt=""></p>
<p>もし <a href="http://wx1.sinaimg.cn/mw690/0072Vf1pgy1foxkfv4t7bj31hc0u018w.jpg">http://wx1.sinaimg.cn/mw690/0072Vf1pgy1foxkfv4t7bj31hc0u018w.jpg</a> のような、005、006、007で始まるものが出現した場合は、62進数で変換します。
なぜこれが出現するかというと、8桁の16進数では保存しきれなくなったためだと思われます。
<a href="https://weibo.com/u/6456124939">https://weibo.com/u/6456124939</a><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/25/0072Vf1pgy1fsnkgpcq7pj30il06vjrb.jpg" alt=""></p>
        
        <hr><p>この記事は2018-06-25に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2018-06-25です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>ウェブパケットキャプチャ - 私のプレイリスト</title>
      <link>https://zh.moejue.cn/ja/posts/31/</link>
      <pubDate>Tue, 05 Jun 2018 11:04:05 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/31/</guid>
      <description>
        <![CDATA[<h1>ウェブパケットキャプチャ - 私のプレイリスト</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>最近、多くの人のブログでウェブスクレイピング（パケットキャプチャ）のチュートリアルが公開されているのを見かけ、それが私の興(きょう)味(み)（かっこつけ）を刺激し、この記事が生まれました。</p>
<p>ちょうど先日、<a href="https://music.52ecy.cn/">私のプレイリスト</a>がKuGouのAPIとの連携が機能しなくなりました。この機会に修正し、ついでに画像付きのチュートリアルを作成することにしました。というわけで、KuGouを「メスを入れる（分析対象にする）」ことにします。</p>
<p>パケットキャプチャの概念について</p>
<blockquote>
<p>パケットキャプチャ（packet capture）とは、ネットワークで送受信されるデータパケットを傍受、再送信、編集、保存などの操作を行うことであり、ネットワークセキュリティのチェックにも使われます。また、データの傍受などにも頻繁に利用されます。</p>
<p>——ゲイ百科より</p>
</blockquote>
<p>ここで話すのは、ウェブページで送受信されるデータの傍受であり、再送信や編集など、ネットワークセキュリティに影響を与える操作は含みません。
実は<a href="https://www.52ecy.cn/tag/%E6%8A%93%E5%8C%85">パケットキャプチャ</a>に関する記事は、2016年にはすでに複数公開していましたが、記事が古くなりメンテナンスされていないため、画像は失われたり、破損したり、順序がめちゃくちゃになっています。
ウェブ開発者、特にバックエンド開発者にとって、パケットキャプチャはあまり馴染みがないかもしれません。しかし、私はデスクトップアプリケーション開発出身なので、使うのはお手の物です。</p>
<p>目的：</p>
<blockquote>
<p>KuGouの楽曲直リンクの解析 - 私のプレイリストの修正</p>
</blockquote>
<p>対象サイト：</p>
<blockquote>
<p><a href="http://t.kugou.com/1md5hf5t8V2">http://t.kugou.com/1md5hf5t8V2</a> KuGouの私のプレイリスト共有短縮URL</p>
</blockquote>
<p>使用ツール：</p>
<blockquote>
<p>Google ChromeのF12キー（または Ctrl + Shift + I、または右クリック &gt; 「検証」）開発者ツール</p>
</blockquote>
<p>（注意：以下のチュートリアルは画像と合わせてご覧ください。見えにくい場合は右クリックで新しいウィンドウで画像を開いてください）
ここではモバイル版のページをキャプチャします。なぜならPC版ではプレイリスト全体が直接ソースコードに返されるため、解析が不便だからです。モバイル版ではJSONが返されます。
Preserve Log：ページ遷移後も以前のログを保持する機能
左上隅の携帯電話アイコン：現在のブラウジングインターフェースのUAをモバイルUAに切り替える
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iyxmmr1j30nz0fl0u2.jpg" alt="">
URLを入力してEnterキーを押しアクセスすると、ウェブページがリダイレクトされます。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iybcesaj314p0arn2j.jpg" alt="">
ステータスコード302、リダイレクトアドレスを取得（必ず画像を確認してください。テキストの説明は簡略化されています）
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iyb1qhdj30w00amjt6.jpg" alt="">
パケットキャプチャはここまでで終了です。以下、分析を開始します：
確かなのは、KuGouサイトの音楽リンクは決して固定ではないということです。
これまでの経験からすると、これらはすべて疑わしいパラメータです。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0j14h87ij30qr0bdmya.jpg" alt="">
パケットキャプチャログを丹念に探すと、プレイリスト全体の取得方法である<code>list</code>が見つかりました。そして、楽曲の基本情報も含まれています。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iybbzb2j312a0e8afo.jpg" alt="">
<code>list</code>リンクを分析すると、ここのパラメータは以前のものと非常によく似ていることが明らかです。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iyb4b7bj30q50adwel.jpg" alt="">
次に、各楽曲のリンクを分析します。
楽曲の直リンクの有効期限はだいたい24時間程度で、無効になります。
引き続きパケットキャプチャログを確認します。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iyc2p8aj314a0ecn23.jpg" alt="">
楽曲のハッシュ値を含めることで、楽曲の関連情報と直リンクを取得できます（ハッシュ値は前述の楽曲リストですでに返されています）。
<img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2018/06/05/0072Vf1pgy1fs0iza7xskj30mg06h3yi.jpg" alt=""></p>
<p>まとめ：</p>
<blockquote>
<p>短縮URL -&gt; ウェブリンクパラメータ -&gt; プレイリストの取得 -&gt; 楽曲の取得 （段階的に、前のステップで得られたパラメータを使って次のURLにアクセスします）</p>
</blockquote>
<p>関連コードは自分で書いてくださいね&hellip;.-。-
このようなチュートリアル性の高い記事を投稿するのは久しぶりです。
最後に一言、Google開発者ツールは本当にめちゃくちゃ便利！
ちょっとした記事を書いて、逃げる〜〜</p>
<p>関連推奨記事
（1）<a href="https://mkblog.cn/492/">PHPを使ってBingの今日の画像をスクレイピングし、自分のものとして利用する</a>.孟坤ブログ.
（2）<a href="https://mkblog.cn/1273">パケットキャプチャ入門（一）</a>
関連コード
（1）<a href="https://www.youngxj.cn/507.html">KuGouプレイリストの楽曲情報取得インターフェースのソースコード</a></p>
        
        <hr><p>この記事は2018-06-05に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2018-06-05です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>LinuxでのPHP環境のインストール</title>
      <link>https://zh.moejue.cn/ja/posts/65/</link>
      <pubDate>Mon, 07 May 2018 06:52:32 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/65/</guid>
      <description>
        <![CDATA[<h1>LinuxでのPHP環境のインストール</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>学习环境：Centos 7.2 正式版</p>
<p># 更新源
yumアップデート</p>
<h1 id="安装-nginx">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85-nginx"></a>
安装 nginx
</h1><p>yum install nginx -y</p>
<h1 id="安装mysql">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85mysql"></a>
安装mysql
</h1><p>wget <a href="https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm">https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm</a>
yum localinstall mysql57-community-release-el7-11.noarch.rpm</p>
<h1 id="安装php72">
<a class="header-anchor" href="#%e5%ae%89%e8%a3%85php72"></a>
安装PHP7.2
</h1><p>rpm -Uvh <a href="https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm">https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm</a>
rpm -Uvh <a href="https://mirror.webtatic.com/yum/el7/webtatic-release.rpm">https://mirror.webtatic.com/yum/el7/webtatic-release.rpm</a>
yumアップデート
yum install -y php72w-cli php72w-common php72w-dba php72w-devel php72w-fpm php72w-gd php72w-imap php72w-mbstring php72w-mysql php72w-pdo php72w-pdo_dblib php72w-pear php72w-pecl-igbinary php72w-pecl-xdebug php72w-process php72w-xml php72w-xmlrpc php72w-opcache php72w-pecl-memcached php72w-pecl-mongodb php72w-pecl-redis</p>
<h1 id="启动服务">
<a class="header-anchor" href="#%e5%90%af%e5%8a%a8%e6%9c%8d%e5%8a%a1"></a>
启动服务
</h1><p>サービス nginx スタート
サービス mysql 開始
php-fmp サービス開始
/usr/sbin/php-fpm &ndash;nodaemonize &ndash;fpm-config /etc/php-fpm.conf &gt; /dev/null 2&gt;&amp;1 &amp;</p>
<h1 id="编辑配置文件">
<a class="header-anchor" href="#%e7%bc%96%e8%be%91%e9%85%8d%e7%bd%ae%e6%96%87%e4%bb%b6"></a>
编辑配置文件
</h1><p>vim /etc/nginx/nginx.conf
:q!#不保存退出
wq #保存退出</p>
        
        <hr><p>この記事は2018-05-07に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2018-05-07です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>各種言語のOEP大全</title>
      <link>https://zh.moejue.cn/ja/posts/35/</link>
      <pubDate>Fri, 19 May 2017 03:08:23 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/35/</guid>
      <description>
        <![CDATA[<h1>各種言語のOEP大全</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p><strong>普段OEPを照合するのは確かに面倒なので、まとめてみました。この記事で直接OEPを確認するか、</strong><br>
<strong>画像を右クリックしてローカルに保存してください。     クリックで拡大表示できます。</strong><br>
<strong>お役に立てましたら、ぜひコメントを残していってくださいね〜</strong></p>
<p><strong>VC6と易语言</strong></p>
<p><strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1pgy1fqi8qw5vw6j30f908vmy4.jpg" alt=""><br>
Delphi7<br>
<strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1ply1fqi8qwc0kxj30hf08u0u1.jpg" alt=""></strong></strong></p>
<p><strong>VB5<br>
<strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1ply1fqi8qw8khaj30f608qjsb.jpg" alt=""></strong></strong></p>
<p><strong>VB6<br>
<strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1pgy1fqi8qw0u4ej30f608qwfd.jpg" alt=""></strong></strong></p>
<p><strong>BC++<br>
<strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1pgy1fqi8qw68tpj30f608qgmc.jpg" alt=""></strong></strong></p>
<p>**VS2008Debug<br>
<strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1pgy1fqi8qywq8zj30fx0da3zb.jpg" alt=""></strong><br>
**</p>
<p>**VS2008Release<br>
<strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1pgy1fqi8qwwnntj30c907et93.jpg" alt=""></strong><br>
**</p>
<p>**VS2012-VS2015Debug<br>
<strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1pgy1fqi8qxkwfgj30c00cx74x.jpg" alt=""></strong><br>
**</p>
<p>**VS2012-VS2015Release<br>
<strong><img src="https://gh-proxy.com/github.com/iAJue/MoeJueBlogPic/blob/master/Images/2017/05/19/0072Vf1pgy1fqi8qx0130j30bf07vdg9.jpg" alt=""></strong><br>
**</p>
        
        <hr><p>この記事は2017-05-19に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2017-05-19です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title># 各言語のボタンイベントシグネチャ</title>
      <link>https://zh.moejue.cn/ja/posts/34/</link>
      <pubDate>Mon, 15 May 2017 05:31:08 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/34/</guid>
      <description>
        <![CDATA[<h1># 各言語のボタンイベントシグネチャ</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p>ソフトウェアのデバッグにおいて最も重要なのはブレークポイントを設定することです。したがって、どのようにブレークポイントを設定するかは、重要なテクニックとなります。</p>
<p>例えば、ダイアログボックスが表示される場合は<code>MessageBoxA</code>に、レジストリ関連の場合は<code>RegOpenKeyA</code>にブレークポイントを設定するなどです。
もちろん、ボタンイベントに直接ブレークポイントを設定できれば、さらに便利です。ボタンイベントに到達すれば、すぐにコアコードにたどり着き、クラックまであと一歩となるからです。
本稿では、各種言語におけるボタンイベントの探し方をまとめます。もちろん、VBexplorer、DEDE、ECEなどのツールを利用することも可能です。</p>
<p><strong>一、VBプログラム</strong></p>
<p>実は、VBのボタンイベントの探し方は最も一般的で、いわゆる万能ブレークポイントと呼ばれるものです。これはボタンイベントだけでなく、NAGスクリーン（催促画面）の解除、スプラッシュスクリーン、グレーアウトまたは非表示のボタン、起動時のタイマーイベントなど、他にも多くの用途があります。具体的な活用法は各自で研究してください。ここではボタンイベントに絞って説明します。
ODでロードした後、CTRL+Bで<code>816C24</code>を検索します。</p>
<p><strong>二、DelphiおよびBC++プログラム</strong></p>
<p>DelphiとBC++は同じ会社によって開発されたため、探し方は同じです。もちろん、DEDEを使用することもできます。
ODでロードした後、CTRL+Gで<code>00401000</code>に移動します。
次にCTRL+Bで、シグネチャ<code>740E8BD38B83????????FF93????????</code>を検索します。
その後の作業は、CTRL+Lで検索を続け、F2でブレークポイントを設定することの繰り返しです。</p>
<p><strong>三、E-language（易言語）</strong></p>
<p>E-languageのこの探し方は、パックされているプログラムにも適用できます。他の言語の場合は、まずアンパックしてから操作する必要があります。
ODでロードした後、F9でプログラムを実行します。プログラムが実行されたら、
CTRL+Bで<code>FF 55 FC 5F 5E</code>を検索します。</p>
<p><strong>四、VC++プログラム（非MFCプログラム）</strong></p>
<p>ODでロードした後、右クリックし、「検索」から「すべてのコマンド」を選択します。
表示された入力ボックスに、特徴的なコード<code>sub eax,0a</code>を書き込みます。
ブレークした後、F7でステップインし、F8で数回ステップオーバーすると、ボタンイベントに到達します。</p>
<p><strong>五、MFCプログラム</strong></p>
<p>もちろん、プログラムがMFCか非MFCかの判断は、各自で行う必要があります。
プログラムを実行し、CTRL+Fで特徴的なコード<code>sub eax,0a</code>を検索します。
ブレークした後、F7でステップインし、F8で数回ステップオーバーすると、ボタンイベントのコードに到達します。</p>
<p><strong>まとめ：各種言語のボタンイベントのシグネチャ</strong></p>
<p><strong>VB：</strong>
<code>816C24</code></p>
<p><strong>Delphi &amp; BC++ ：</strong>
<code>740E8BD38B83????????FF93????????</code></p>
<p><strong>MFC：</strong>
<code>sub eax,0a</code></p>
<p><strong>VC++：</strong>
<code>sub eax,0a</code></p>
<p><strong>E-language（易言語）：</strong>
<code>FF 55 FC 5F 5E</code> または (e-debug)</p>
<p><strong>万能ブレークポイント：</strong>
<code>F3A58BC883E103F3A4E8</code></p>
<p>ボタンイベントの使用方法については、私の<a href="http://www.52ecy.pw/post-28.html">ゼロから学ぶクラックシリーズチュートリアル</a>をご覧ください。</p>
<p>本稿の一部はインターネットから引用したものです。</p>
        
        <hr><p>この記事は2017-05-15に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2017-05-15です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
    

    <item>
      <title>ゼロから学ぶリバースエンジニアリングシリーズ講座概要 第一期</title>
      <link>https://zh.moejue.cn/ja/posts/33/</link>
      <pubDate>Mon, 08 May 2017 02:00:51 &#43;0000</pubDate>
      <author>xxx@example.com (MoeJue)</author>
      <guid>https://zh.moejue.cn/ja/posts/33/</guid>
      <description>
        <![CDATA[<h1>ゼロから学ぶリバースエンジニアリングシリーズ講座概要 第一期</h1><p>著者: MoeJue(xxx@example.com)</p>
        
          <p><strong>目的：このチュートリアルシリーズの目的は、クラッキング防止です。これはクラッキングに関する知識を教えるチュートリアルですが、クラッカーがどのようにソフトウェアをクラックするかを知ることで、より効果的にソフトウェアのクラッキングを防ぐことができます。</strong></p>
<p><strong>基礎入門編</strong></p>
<pre><code>   1、中国語検索とNop                       [第一回ダウンロードアドレス](http://bbs.125.la/forum.php?mod=viewthread&amp;tid=14017567)： プログラムをコンパイルして保存する方法

   2、jeとjmpの使用 zフラグ               [第二回ダウンロードアドレス](http://bbs.125.la/forum.php?mod=viewthread&amp;tid=14018591)：不明なネットワーク認証のクラッキングを実践

   3、ローカル再起動認証                          [第三回ダウンロードアドレス](http://bbs.125.la/forum.php?mod=viewthread&amp;tid=14019645)：2回のコンパイル保存によるクラッキング
</code></pre>
<p><strong>ボタンイベント編</strong><br>
1、易言語ボタンイベント、万能ブレークポイント      <a href="http://bbs.125.la/thread-14021176-1-1.html">ボタンイベント編ダウンロードアドレス</a>：易言語の構造に頼って真の易言語プログラムを区別する</p>
<p><strong>応用編</strong></p>
<pre><code>            1、ネットワーク認証        [応用編第一回ダウンロードアドレス](http://bbs.125.la/thread-14022484-1-1.html)：シングルステップデバッグ中にレジスタとスタックウィンドウの変化、疑わしいジャンプに注意

          2、シェル付きプログラムのデバッグ(401000番地)、パッチ適用(メモリ)     [応用編第二回ダウンロードアドレス](http://bbs.125.la/thread-14023855-1-1.html)：（白宝雲ネットワーク認証高速クラッキングテクニック）  
</code></pre>
<p><strong>アンパック編</strong><br>
1、ESPの法則                        <a href="http://bbs.125.la/thread-14025607-1-1.html">アンパック編ダウンロードアドレス</a>：XPシステム下でアンパックする必要があることに注意</p>
<pre><code>        2、シングルステップトレース法、IATの修復     [第二回ダウンロードアドレス](http://bbs.125.la/thread-14025607-1-1.html)：(2回は一緒に録画・公開されました)、チュートリアルで使用されたすべてのツールをパッケージ化し、最終レッスンのささやかなプレゼントを贈呈

    **この忙しい5月末に、ゼロから学ぶクラッキングシリーズチュートリアルのシーズン1が完結しました。これまでずっと応援してくださった皆様、ありがとうございます！** **もしシーズン2を出す機会があれば、事前に私のブログで概要を更新しますので、引き続きご注目ください！**
</code></pre>
<p><strong>補足：<br>
オンライン視聴アドレス：<a href="https://www.eyuyan.tv/tw-%E9%98%BF%E7%8F%8F-2">易语言TV网</a></strong></p>
        
        <hr><p>この記事は2017-05-08に<a href='https://zh.moejue.cn/'>阿珏酱のBlog</a>で公開され、最終更新日は2017-05-08です</p>]]>
      </description>
      
        <category>教程</category>
      
    </item>
    
  </channel>
</rss>
