はてなキーワード: UTCとは
了解しました。以下では、指定されたツイート(https://x.com/fnmr_s_/status/1942730465988731238?s=46)に対する反応を分析し、参政党(Sanseito)を支持している側の人々の意見のパターンを日本語でまとめます。
新土 @fnmr_s_ による元の投稿は、2025年7月20日に予定されている参議院選挙を前に、参政党が「非常に危険」であると警告する内容です。投稿では、参政党を「カルト」と表現し、たった一人の女性が抗議のプラカードを掲げていたことを挙げて、その危険性を強調しています。この投稿は、2025年7月8日23:40(UTC)に投稿され、現在(2025年7月10日午前9時07分JST)から約33時間前にあたります。
ツイートに対する返信を精査した結果、参政党を支持する側の人々の意見には以下のような明確なパターンが見られます。これらのパターンは、批判に対する防御や支持の理由を述べる形で現れています。
#### 1. **批判の逆利用(「叩かれるほど支持が増える」という主張)**
- **例**: shou rian(💙,🧡) Tabi @shou95180980(2025年7月9日06:56 UTC): 「やっぱ、こーいうツイート増えるのって参政党支持されてる証拠よな」
- **パターン**: 参政党に対する批判や「カルト」といったレッテル貼りが、むしろ支持を強める証拠だと捉え、逆効果であると主張します。支持者は、メディアや反対派の攻撃が党の知名度を上げ、支持者を増やしていると信じています。
- **例**: ag @bHbejgVstf61032(2025年7月9日05:05 UTC): 「はっきりとしたカルト(自民党統一教会)も忘れないで下さい」
- **パターン**: 参政党を批判する声に対して、自民党や統一教会との関連を指摘し、他の主要政党(特に自民党)の方がより深刻な問題(腐敗、カルト的行為、脱税など)を持っていると反論します。これにより、参政党の「危険性」を相対化し、支持の正当性を主張します。
#### 3. **他党(特に左派政党)の方が危険との主張**
- **例**: ドライもん @drymon_gnz(2025年7月9日05:42 UTC): 「危険度で言ったら、社民共産を超えるものはないよ」
- **パターン**: 社民党や共産党を「より危険」と位置づけ、参政党の批判を軽視します。支持者は、左派政党が国家や公安に与える影響を強調し、参政党が比較的「安全」または「必要」とする立場を取ります。
#### 4. **陰謀論やバックアップ組織の支持を強調**
- **例**: しょん@急性期 @corona_uso(2025年7月9日06:37 UTC): 「参政党を離れる支持者の多くが自分で“日本会議”と“統一教会”の存在を調べてる。“日本会議”と“統一教会”が参政党の選挙スポンサーだよ」
- **パターン**: 参政党が「日本会議」や「統一教会」などの保守的な組織に支えられていることを誇示し、これを支持の根拠とします。支持者は、これらの組織が日本の国益を守るために活動していると信じており、参政党がその延長線上にあると見なしています。
- **例**: shou rian(💙,🧡) Tabi @shou95180980(2025年7月9日06:56 UTC): 「とりあえず今回は頑張って自民潰してほしいから参政党で」
- **パターン**: 参政党を、自民党に対する対抗勢力として戦略的に支持する意見が見られます。支持者は、自民党の長期政権やスキャンダルに不満を持ち、参政党が政権交代や政治の刷新をもたらす手段とみなしています。
- **例**: セントク@翻訳家・ライター @8hazUAPnBKmQUfi(2025年7月9日06:10 UTC): 「投票率あげるんです。…この票が動いたら政権なんで直ぐにひっくり返る」
- **パターン**: 投票率の低さを問題視し、参政党への支持が政治を変える力になると主張します。支持者は、積極的な投票行動を通じて現在の政治状況を変えたいという意欲を示し、参政党をその手段と位置づけています。
### 総括
参政党支持者の意見パターンは、批判を逆手に取る防御戦略、他党(特に自民党や左派政党)の問題を強調する比較、陰謀論や保守組織との連携を誇示する主張、そして選挙を通じた政治変革への期待に集約されます。これらのパターンは、支持者が参政党を「日本の国益を守る純粋な選択肢」として捉え、既存の政治勢力に対する不信感や変革の必要性を背景にしていることを示しています。
はい、**ブロックチェーンを使ったタイムスタンプ**は、「元データそのものを共有せずに、その存在と時刻を証明する手段」として非常に有効です。特に、ハッシュ値をブロックチェーンに記録することで、元データを後から提示するだけで、それがある時刻に存在したこと・改竄されていないことを**誰でも検証可能にする**、という形になります。
あなたの希望(元の文章が掲示板などで変形されても検証可能、あるいは元文不要)に近づけるには、**ハッシュをブロックチェーンに書き込んで、後からそのハッシュに一致する元データを見せる**という形式になります。
---
### 基本の流れ:
2. そのハッシュをブロックチェーンに記録(トランザクションのメモ欄など)
3. 後から誰でもハッシュとトランザクションを照合して、時刻と整合性を検証可能
---
## ✅ 推奨ツール:OpenTimestamps(OTS)
[OpenTimestamps](https://opentimestamps.org/) は、ビットコインのブロックチェーンを用いた無料のタイムスタンプサービスです。
---
## ✅ Windows 11 での手順(OpenTimestamps CLI)
Pythonがまだ入っていない場合は、https://www.python.org/downloads/windows/](https://www.python.org/downloads/windows/) からインストーラーを取得し、`Add to PATH` にチェックを入れてインストールしてください。
コマンドプロンプトまたはPowerShellで以下を実行:
```bash
pip install opentimestamps-client
```
たとえば `message.txt` というファイルを用意します(中身は何でもOK)。
```bash
```
これにより、`message.txt.ots` というタイムスタンプファイルが作成されます。
これは「Bitcoinにこのデータのハッシュを記録する要求がされたこと」を表します。
```bash
```
署名がBitcoinブロックチェーンに記録されていれば、次のように表示されます:
```
Success! Bitcoin attests data existed as of 2025-06-08 12:34:56 UTC
```
---
```bash
echo -n "あなたの文" | openssl dgst -sha256
```
このハッシュに一致するファイルを後から提示すれば、それが当時存在していたことを証明できます。
---
## ✅ まとめ
特徴 | 内容 |
------------- | -------------------- |
元文の提示は不要 | ✅(ハッシュが一致すればOK) |
改行や掲示板変形の影響なし | ✅(ハッシュが変わらなければOK) |
無料かつ自律的 | ✅(Bitcoinブロックチェーン使用) |
Windows対応 | ✅(Python + CLI) |
---
もしあなたの目的が「一定時刻に自分がその文を作成したことの証明」であるなら、この方法は非常に相性が良いです。
---
必要であれば、GUIツールやウェブインターフェースを使った方法(例:[OpenTimestamps Calendar](https://calendar.opentimestamps.org/))も紹介できます。希望があればお知らせください。
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 20250610095304512 -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaEgAgAAKCRBwMdsubs4+ SII/AP9HFG5+U8BfEXzKxSoyEuxm6X/vJjK7Ee7Kwpi/rwQZJgEAorUjMTh9okHu 3WbPvgsSfDyzhpUuwCVsKessR4FSpQE= =VNrS -----END PGP SIGNATURE-----
ようやく(ほぼ)すべてが自動化された。
あとはローカルサーバーの起動をスタートアップに設定する(方法をAIに聞いて指示に従う)だけの消化試合。
署名時要求してくるパスワードを自動入力するahkファイルはドキュメントのAutoHotkey配下に置いた。
バッチファイル(make.sign.bat)はデスクトップに置いた。
#Persistent #SingleInstance ignore SetTitleMatchMode, 2 WinWaitActive, pinentry SendInput お前のパスワード Sleep 100 SendInput {Enter} ExitApp
// run-batch-server.js const http = require('http'); const { exec } = require('child_process'); const server = http.createServer((req, res) => { if (req.url === '/ping') { res.writeHead(200); res.end('pong'); } else if (req.url === '/run-batch') { exec('C:\\Users\\you\\Desktop\\makesign.bat', (err) => { res.writeHead(200); res.end(err ? 'Error' : 'OK'); }) ; } else { res.writeHead(404); res.end('Not found'); } }); server.listen(12345, () => { console.log('Batch server running at http://localhost:12345/'); });
@echo off setlocal enabledelayedexpansion :: ミリ秒単位のUTC時刻を取得 for /f %%a in ('powershell -nologo -command "[int64]::Parse((Get-Date).ToUniversalTime().ToString('yyyyMMddHHmmssfff'))"') do set timestamp=%%a :: 署名するファイル名 set infile=%TEMP%\pgp_input.txt set outfile=%TEMP%\pgp_output.asc :: 以前の出力があれば削除 if exist "%outfile%" del "%outfile%" :: タイムスタンプを原文として保存 echo %timestamp% > "%infile%" :signloop :: AutoHotkeyでパスフレーズ入力(gpgがパスワード要求するダイアログが出た場合に備える) start "" /b "C:\Users\infini\Documents\AutoHotkey\autopass.ahk" :: PGPクリア署名を作成 gpg --yes --clearsign --output "%outfile%" "%infile%" :: 署名が成功していればループを抜ける if exist "%outfile%" ( echo [INFO] 署名成功 goto postprocess ) else ( echo [WARN] 署名失敗、再試行します… timeout /t 1 > nul goto signloop ) :postprocess :: PowerShellで余計な改行なしに |< をつけてクリップボードにコピー powershell -nologo -command ^ "$header = '>|'; $footer = '|<'; $body = Get-Content '%outfile%' -Raw; Set-Clipboard -Value ($header + \"`r`n\" + $body + $footer)" echo Done. signed.asc created and clipboard updated (no extra blank line). endlocal exit /b
// ==UserScript== // @name PGP署名自動付加スクリプト(GM_xmlhttpRequest版) // @namespace http://tampermonkey.net/ // @version 1.0 // @description 投稿前にPGP署名を付けてから送信(fetch未使用) // @match https://anond.hatelabo.jp/dorawii_31/edit* // @grant GM_xmlhttpRequest // @grant GM_setClipboard // @grant GM_notification // / @connect localhost // ==/UserScript== (function () { 'use strict'; const submitId = 'submit-button'; const textareaId = 'text-body'; const localServer = 'http://localhost:12345/run-batch'; const pgpSignatureRegex = /-----BEGIN PGP SIGNED MESSAGE-----[\s\S]+?-----BEGIN PGP SIGNATURE-----[\s\S]+?-----END PGP SIGNATURE-----/; const httpRequest = (url) => { return new Promise((resolve, reject) => { GM_xmlhttpRequest({ method: 'GET', url: url, onload: function (response) { resolve(response.responseText); }, onerror: function (error) { reject(error); } }); }); }; const interceptClick = () => { const btn = document.getElementById(submitId); if (!btn || btn.dataset.pgpIntercepted === 'true') return; btn.dataset.pgpIntercepted = 'true'; btn.addEventListener('click', async function (e) { const textarea = document.getElementById(textareaId); if (!textarea) return; const content = textarea.value; if (pgpSignatureRegex.test(content)) { console.log('[PGPスクリプト] 署名が検出されたためそのまま送信します'); return; } e.preventDefault(); e.stopImmediatePropagation(); console.log('[PGPスクリプト] 署名が見つからないため処理を停止し、署名を取得します'); try { await httpRequest(localServer); // バッチ実行 const signatureText = await navigator.clipboard.readText(); if (!signatureText.includes('BEGIN PGP SIGNED MESSAGE')) { alert('PGP署名がクリップボードに見つかりませんでした。'); return; } const newText = content.replace(/\s*$/, '') + '\n' + signatureText + '\n'; textarea.value = newText; console.log('[PGPスクリプト] 署名を貼り付けました。送信を再開します。'); btn.click(); // イベント再発火 } catch (err) { alert('PGP署名の取得または貼り付けに失敗しました。\n' + err); } }, true); }; window.addEventListener('load', () => { setTimeout(interceptClick, 1000); }); })();
プロミスメソッドとか全然まだ理解してなくてそのなかに関数代入したその関数にオブジェクトのプロパティにresponseを?いやまあそのあたりのコードが示すデータの流れが全然理解できないような人間でもここまでできちゃった。
AIすごいなと思うよ。そして思うのは今後重要になってくるのは文法とか自体に詳しいことじゃなくて、そのプログラムの処理内容を指示できるシステムエンジニア的な言語化能力のほうじゃないかなと思った。
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 20250609111559680 -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaEbCbwAKCRBwMdsubs4+ SLueAPwOv7PBk4voAe5qlcCEvs/PJhmKc5QAb/1R43JMQFuDZgD/UTPEKsL/PhK9 jFGv2HDXK1dVjLNwvosgX9uYJh5xxwY= =qiOE -----END PGP SIGNATURE-----
ChatGPTにバッチファイルを作ってもらったのでこれからは署名が捗るぞ。これだけ手軽化できたらレスバに入っても署名つけるのも億劫にならずできそうだ。
なにせ文章を書き折ったらあとはバッチダブルクリックしてCtr+Vするだけだ。
名乗る人が増えることを期待して作らせたものを公開しておく。
@echo off setlocal :: ミリ秒単位のUTC時刻を取得 for /f %%A in ('powershell -nologo -command "[int64]::Parse((Get-Date).ToUniversalTime().ToString('yyyyMMddHHmmssfff'))"') do set timestamp=%%A :: PGPクリア署名を作成 echo %timestamp% | gpg --yes --clearsign > signed.asc :: PowerShellで余計な改行なしに |< をつけてクリップボードにコピー powershell -nologo -command ^ "$header = '>|'; $footer = '|<'; $body = Get-Content 'signed.asc' -Raw; Set-Clipboard -Value ($header + \"`r`n\" + $body + $footer)" echo Done. signed.asc created and clipboard updated (no extra blank line).
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 20250608045542542 -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQTEe8eLwpVRSViDKR5wMdsubs4+SAUCaEUXzgAKCRBwMdsubs4+ SCvuAQDjRjPVCO1F9DgmAKoqKYG7qB9r4e7y2Ky+/umT/OhnygEA8h2NL8zIczSp hcOk/MaDWJJ2Y7WDA3d6gxFakW8TKAw= =HE4/ -----END PGP SIGNATURE-----
はてなブックマークのAPIを利用して 非公開 でブックマークする方法をご説明します。
2. OAuthのトークンを発行する。(個人用のスクリプトなら「パーソナルアクセストークン」推奨)
ブックマークを 非公開 にするには、APIのリクエストボディに private フィールドを 1 に設定します。
エンドポイント:
POST https://bookmark.hatenaapis.com/rest/1/my/bookmark
リクエストボディ(JSON): { "url": "https://anond.hatelabo.jp/xxxxxxx", "comment": "自動ブックマーク", "private": 1 }
以下のコードを実行すれば、10分以内の匿名ダイアリー記事をランダムに 非公開 でブックマークできます。
import feedparser import requests import random import time from datetime import datetime, timezone, timedelta # はてなAPIの認証情報 HATENA_API_KEY = "あなたのAPIキー" HATENA_USERNAME = "あなたのはてなID" # はてな匿名ダイアリーのRSS URL RSS_URL = "https://anond.hatelabo.jp/rss" # 10分以内の投稿を取得 def get_recent_entries(): feed = feedparser.parse(RSS_URL) recent_entries = [] now = datetime.now(timezone.utc) for entry in feed.entries: published_time = datetime(*entry.published_parsed[:6], tzinfo=timezone.utc) if (now - published_time) < timedelta(minutes=10): recent_entries.append(entry.link) return recent_entries # はてなブックマークに非公開で追加 def bookmark_entry(entry_url): url = "https://bookmark.hatenaapis.com/rest/1/my/bookmark" headers = { "Authorization": f"Bearer {HATENA_API_KEY}", "Content-Type": "application/json" } payload = { "url": entry_url, "comment": "自動ブックマーク", "private": 1 # 非公開設定 } response = requests.post(url, json=payload, headers=headers) return response.status_code # メイン処理 while True: entries = get_recent_entries() if entries: entry = random.choice(entries) status = bookmark_entry(entry) print(f"非公開ブックマーク: {entry}, ステータス: {status}") time.sleep(600) # 10分ごとに実行
• 実行環境: Python 3.x が必要。requests と feedparser をインストール (pip install requests feedparser)
• 実行間隔: time.sleep(600) で10分ごとに実行
• API制限: はてなAPIにはリクエスト制限があるため、短時間で大量に実行しないように注意
• OAuth認証: APIキーだけでなく、OAuthトークンを使うほうがより安全
このスクリプトを実行すれば、最新の匿名ダイアリー投稿を10分以内のものからランダムに選び、非公開でブックマークする ことができます。
暗黙的にJSTとして時間を使ったせいでUTCで作った場所で盛大にバグる
応急処置でバグったところを+9とかやってしまうと、それ以降に逆に誰も気付かずに更に影響範囲が拡がったりする
海外展開しようとしたときにバグに気付くがどうしようもなくなって途方にくれて海外だけは別アプリになったりする
UNIXTIMEを使えば楽なんだけれど、そうすると生データぱっと見で時間を判別できないので困ることも多い
素直にUTCでISO8601が良い
とりあえずUTF-8にしとけば大丈夫、ってことで実装を進めた結果、Mac/Winでハマる
他にもBOMでハマったりして、むしろSJISの方が良かったんじゃ無いか、とか言い出す
DBが統一的になっている場合はまだ後からどうにかできるが、変なところでキャッシュされてたりすると凄い困ることになる
MySQLなりPostgreSQLなりでUTF-8を正しく扱う方法はいろんな記事があるのでちゃんと読んでおけば問題無い
とかよく分からないことを言い出して価格を浮動小数にしてしまう
確かに米国なら$2.43みたいな感じで価格を使ったりするし、むしろ小数点以下が無い通貨の方が珍しいのだけれど
丸め誤差を考えないで作ってしまってバグが見つかりめちゃくちゃ揉める
すっぱい葡萄
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/11/02 10:25 UTC 版)
「酸っぱい葡萄」(すっぱいぶどう)は[1]、イソップ寓話の一つで、その邦題(日本語題名)の一つ。原題(古代ギリシア語題名)は "Ἀλώπηξ καί σταφυλή" (ラテン翻字:Alópex kái staphylé、和訳:狐と葡萄)[2]、ラテン語題名は直訳した "Vulpes et uva "、英題も直訳した "The Fox and the Grapes " で、邦題にも直訳した「狐と葡萄(きつねとぶどう)」がある。狐が己が取れなかった後に、狙っていた葡萄を酸っぱくて美味しくないモノに決まっていると自己正当化した物語が転じて、酸っぱい葡萄(sour grape)は自己の能力の低さを正当化や擁護するために、対象を貶めたり、価値の無いものだと主張する負け惜しみを意味するようになった[3]。
https://ja.wikipedia.org/wiki/%E3%83%8E%E3%83%BC%E3%83%88:%E8%91%89%E6%A2%A8%E5%BA%B7%E5%BC%98
正確性に関する外部からの指摘
現時点での最新版(2022年8月10日 (水) 10:15 (UTC) の版番90910796)の「発言要旨」節の記述(2010年5月8日 (土) 16:46 (UTC) の版番31998247の加筆に由来するが、それ以前の 2009年6月28日 (日) 05:14 (UTC) の版番26642282や2009年6月29日 (月) 14:01 (UTC) の版番26666330にほぼ同内容の加筆あり)について、以下の外部サイトで不正確との指摘がありました。
ブログを開設しツイッターでも積極的につぶやいている方ですが、その割にあまり継続的にメディアに取り上げられている様子がなさそうです。2021年衆院選政策アンケートは第49回衆議院議員総選挙の立候補者全員を対象としているので特筆性の根拠にすべきものではありませんし、過去に炎上したことがありますがこれも特筆性の根拠になりません。選挙に立候補しては落選を繰り返す人物でも羽柴秀吉、又吉イエス、後藤輝樹などは結構メディアに取り上げられているので、同列にはならないでしょう。
過去4回にわたり共産党から国政選挙に立候補している点で特筆性があるのかどうかということですが、当選したわけでもなく、上記のように継続的にメディアに取り上げられているわけでもなさそうなので特筆性がないものと考えます。
ケースE「百科事典に記載するほどの著名性・特筆性がない記事」
(削除)依頼者票。--Muyo(会話) 2021年11月13日 (土) 15:18 (UTC)
削除 依頼者に同意。現時点では党関係者として、何らかの特筆性がある人物とは思えない。--Sercioranndoss(会話) 2021年11月15日 (月) 04:25 (UTC)
削除 現時点では選挙に立候補しただけの人であり、政治家としての特筆性は選挙に出馬しているという一事をもって特筆性が保証されるわけではありません。以前の募金に関する炎上案件で私も名前だけは知っていましたがそれを持って第三者言及があるとはならないでしょう。ケースEとして削除に同意します。--Naga-r-juna(会話) 2021年11月17日 (水) 01:34 (UTC)
Wikipedia:削除依頼/香西かつ介 - Wikipedia https://ja.wikipedia.org/wiki/Wikipedia:%E5%89%8A%E9%99%A4%E4%BE%9D%E9%A0%BC/%E9%A6%99%E8%A5%BF%E3%81%8B%E3%81%A4%E4%BB%8B