サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
体力トレーニング
robinegg.hatenadiary.jp
本稿では、最近流行の兆しを見せている、新規なL3 VPNソフトウェアであるWireGuardを用いた導入モデルケースを検討します。 日本語文献はまだまだ少ないですが、WireGuardの詳細は「作って理解するWireGuard」や「WireGuard:次世代耐乱用性カーネルネットワークトンネル」あたりに良く纏まっている通り、主なメリットとして、 最新の暗号化スイート・鍵交換プロトコルを用いている 他のVPNソフトウェアに比べ、コードベースが非常にコンパクト(であるためコードの見通しが良く、よりセキュアかつ動作が軽量) 一時期出血多量だった OpenSSL 等の他のソフトウェアに依存しない ということが挙げられます。 また、設定項目が著しく少なくて済むというのも大きなメリットであり、最低限、接続先のIPアドレスと公開鍵情報、および自端末の秘密鍵さえあればセッションが成立します。 デメリットと
たまたまGL09Pが手に入ったので、価格.comの口コミ上で報告のあった、 dc-unlocker を使ったSIM Lock解除を実際に試してみました。費用は 7 credits(=€7、最近のレートで大体1000円くらい)。 結果から言えば、サクッとアンロックできてしまいます。注意点は、作業時に dc-unlocker からの操作で端末をデバッグモードのような状態に持っていく必要がありますが、 Windows 8 ではこの状態のドライバ(Diagnostic Port のドライバ)を読み込むことができないため*1、Win 7(もしくはVista)で作業する必要があります。 一度SIM Lockを解除してしまえば、APN 設定を行って以前の Pocket Wifi シリーズのような形で使用することができます。APNの設定画面上ではEmobileの番号(A番号)とSoftBankの番号(B番
先日、ちょっとしたログを表示するのに Graphite の導入を検討していて、試しに走らせてみたのでそのときの記録をメモしておきます。 Graphite とは 日本語の情報が少ないのでアレですが、高機能版の rrdtool といえば当たらずとも遠からず、という感じ。rrdtool といえば munin や MRTG、あるいは GrowthForecast などでおなじみの Perl 系グラフ表示ミドルウェアですが、ユーザー側でグラフの表示期間やスケールの変更を行ったりすることはちょっと難しいのが難点でした。 また、これは個人的に盲点だったのですが、 rrdtool が扱うデータのタイムスタンプは、原則としてAPIにデータが投入された時刻になってしまうんですね(API への引数として別途時刻を指定できない)。従って、 on-time で投入可能なアクセスログや、逐次投入が可能な HW メトリ
PyWispr での認証は、各サービスの認証ページが設置されているドメインをキーに、 secret.xml に記載された情報とマッチさせています。 kddi.com au Wifi Spot の情報です。au ユーザーであれば、下記ページに接続端末のMACアドレスを投げてアクセスするとID/Passを取得できます( d:id:RobinEgg:20120617:p1 )。 https://auwifi-signup.auone.jp/su2/?{"mac_addrs":["***大文字MACアドレス***"],"manufacturer":"Windows","model":"7","request_type":"0"}なお、ここで取得できたIDは、そのままでは使えないので、 {"code":"N22","device_num":"01","max_device_num":"02","pa
今年もどうぞよろしく。 GeoLocation サービスのリバースエンジニアリング 些か旧聞に属するのですが、Telecom SudParis (France) の学生が、卒業研究として iOS 端末が位置決定に用いている GeoLocation システムで使われているプロトコルをリバースエンジニアリングしたという内容の論文をみつけました*1。 周囲の Wifi アクセスポイント (AP) の MAC アドレスから現在位置を割り出す GeoLocation システムはモバイルデバイスの台頭とともに非常に注目される分野になっており、Apple も当初は Skyhook を使っていましたが、いつの頃からか位置情報も自前で管理するようになりました。 以前から gs-loc.apple.com が Apple の位置情報サーバーだろうということと、通信内容は Protocol Buffer でシリ
音楽や動画ファイルのメタデータを取得する際、 taglib などの外部ライブラリを使用しても良いのですが、使う範囲が限られているのであれば、 Windows 標準の shell32.dll を使用するのも一つの選択肢です。 ただ、これには弱点があり、 XP/Vista/7 間で微妙に互換性がないことと、特に AAC/mp4 ファイルのメタデータ取得ができたりできなかったり、という問題があります。 エクスプローラーの詳細表示と同じ情報を取得できるので、特に文字化けを気にしなくて済むというのは利点ですが、AAC 系のファイルは XP では扱いづらいこと、また未だに XP マシンが跋扈している現状、使い勝手は正直良くないですが、とりあえず載せてみます。 3OS 間で互換性がない、というのは、 Shell32.ShellClass のインスタンスを作成する際、例えば 7 で開発したものをそのまま
Python 版 WISPr クライアントはじめました。 国内で展開している、主に携帯キャリアの公衆無線LANサービスに対応した自動ログインスクリプトを公開します。 これまで色々と各キャリアの無線LANサービスについて書き連ねてきたわけですが、ここらでひとつコードとして纏めておこうと思い、さくっと書いてみました。NTT系以外*1の公衆無線LANサービスで動作確認を行っています。 ソースはこちら: tamias / PyWISPr / source / — Bitbucket 作成の経緯 そもそもは3G回線契約を持たない Android 端末でどうにか簡単に使えないかなというのが発端であり、純正アプリは軒並み低評価ということもあって、まずは Android 版の作成を考えていました。 が、1から作るのはなぁ…と思っていたところ、オープンソース(GPL)で公開されている 1st-wispr c
図らずも数ヶ月に渡って公衆無線LANサービスについて色々と書いてきましたが、その中で出ていたWISPrについての説明を少々しておこうと思います。 そもそもWISPrとは、 "Wireless Internet Service Provider Roaming"の頭文字を取ったものです。ここからわかるとおり、無線ISP間のシームレスなローミングを目的として策定が行われています。 Ver.1.0 は Wi-Fi Alliance 主導の下、2003年2月に策定が行われました。このバージョンでは、バックエンドにRADIUSを、フロントエンドにHTTPを用いた形が想定されており、Appendixという形で802.1xによる認証方式が記載されています。 が、策定時点において既に規格よりも実装が先行していたため、あくまでも「ベストプラクティス」集として制定されました。このため、特許など知的財産権侵害の
前回のKDDI系Wifiスポットに続き、ソフトバンク版についても認証プロセスを考えてみたいと思います。 結論から言えば、アクセスしてくる端末のUserAgentを見て挙動を変えているという話に帰結してしまうのですが、それだけでは面白みが少ないのでもうちょっと話を広げてみましょう。 ソフトバンクWi-Fiスポット、とは 公式ページはこちら。言わずと知れたキャリアによる公衆無線LANサービスの草分けであり、スポット数は公衆無線LANサービス中でもダントツのトップを誇ります。 しかしながら、絨毯爆撃のような営業に伴って起こっている2.4GHz帯の汚染、またバックホールを1.5GHz帯の自社回線(ULTRA SPEED)としたスポットの増大による回線帯域の無駄遣いという批判*1など、いろいろと問題が提起されているサービスでもあります。 そうはいってもスポット数は圧倒的であり、3G/LTE/WiMA
更に追記 2013.04.01 現在、au ID によるログインで設定変更が可能になったようです。新たに記事を立てましたので、詳細は d:id:RobinEgg:20130406:p1 をご覧ください。 追記 2012.12.03現在、改悪されてしまったようです。 下記に記載している送信先番号の「00900000」は「00900015」に変更になり、この番号にSMSを打った時点で強制的に非公開モードに変更されてしまうようです。 下記でも記載していますが、非公開とはいえ、中身はIMAPなのですが、ID/Passを公開してくれないため手も足も出ないようです。 iPhone専用番号である「#5000」はまだ生きているのでこちらに送信してやれば何とか使えはするのですが、下記記載の通り、一部端末を除くと純正メッセージングアプリはおろか、Google Playで公開されているようなSMSアプリケーショ
後編です 認証系を解析した詳細は、前編の d:id:RobinEgg:20120617 に記載しています。 d:id:RobinEgg:20120617 で書いた内容だと、その気になれば OS に関係なく Javascript で認証系組めますよね、ということでざっと書いてみた。動作確認が取れているのは、 KDDI 系の公衆無線LANサービス(wi2/au_Wi-Fi/UQ-WiFi) です。 wi2 系ではログインページ内 XML を切り出して都度読み込ませていますが、 au_wi-fi ではリダイレクト中のレスポンスボディを読み取るのが難しいため、認証 URL を決め打ちにしています。このため、仕様変更があると使えなくなる可能性が高いです。 実際に使用される場合は、 https://auwifi-signup.auone.jp/su2/?{"mac_addrs":["***大文字MAC
au Wi-Fi SPOTは2012年3月1日からスマートフォンだけでなく、PCやタブレットなど2台目の端末でも利用できるようになりました。(略)ついカッとなってLinuxから接続できるコマンドラインツールを作りました。GitHubにて公開しています。 au Wi-Fi SPOTにLinuxから接続できるようにしてみた - Gマイナー志向 という素晴らしい記事を見かけたので、試してみました。が、初っぱなの端末 MAC アドレスの登録が、どういうわけか上手く行かない。 {"code":"S08"} とか {"code":"S26"} とかが表示されて全く動かず、同じようにハマっている人も見かける始末。 レスポンスの内容をscrapeして,次のURLを取得する処理を行っているが、上記の結果なので、URLを設定できず、次のPOSTでエラーとなっている。 code: S26だけでは調査する情報が少
とある通販サイトで適当にパスワード打ち込んだら、後日思い出せなくなって涙目になったのでカッとなってパスワードジェネレーターを作ってみた。 Bookmarklet にしてご利用ください。Firefox 8.0でのみ動作確認しています。 概要 ソースコードは最下部に記載しています。ドメイン名とマスターパスワード(Salt)から、都度パスワードを算出する Bookmarklet です。マスターパスワードが変わらない限り、同じドメインのページでは常に同じパスワードが発行されますので、もうこのサイトのパスワード何だったっけ、と頭を悩ます必要がありません。ただし、マスターパスワードが漏洩すると元も子もありませんので、マスターパスワードの管理だけはしっかりするようにしてください。 初回実行時には記号使用の有無と文字数を聞かれます。これらの値はブラウザの LocalStorage に保存されるため、履歴が
フリーの UPnP AV / DLNA サーバーを公開しました。 開発動機 PS3 Media Server(以下PMS)は非常に高性能ですが、高性能故に動作が緩慢だったり、設定項目が多すぎて簡単に使えないというジレンマがあった。 「TS配信にPMSを使う」はずが「如何にPMSを使いこなすか」という本末転倒な状況をどうにかしたい PMSでmp3配信を行うと、酷い文字化けに遭遇することが多かった。 これがきっかけで我が家のライブラリは AAC に統一されつつある どうしても海外ソフトでは日本語対応が弱くなる 折角クライアントに PS3 を使うのに、生 ts の配信に難があったり、トランスコードに頭を悩ませるのはおかしい。 foobar2000 + foo_upnp.dll では、ライブラリ内容を一気に配信しようとするため、数百エレメントを持つライブラリだとクライアント側が非常にしんどいことに
動画ファイルとは そもそも動画ファイルの構造はどうなってるのよという話。全ての基本なので今更感もあるのだけど、ここをわかっていないとffmpegは使いづらいので書いてみる。図で表すとこんな感じ。 大雑把に言えば、映像と音声をコンテナが包んでいる感じ*1。普段見慣れているflvとかaviとかmovとかいったファイル形式の多くはコンテナの種類だったわけですね*2。 動画ファイル内部では映像と音声は互いに独立していて、コンテナがメタ情報として同期情報を持っているので、普通に再生すれば映像と音声が合っていても、ふとした拍子にズレてしまうのは映像と音声の間で同期が取れなくなってしまうことが原因(だと思う)。逆に、映像と音声が独立しているからこそ、動画ファイルから映像だけ抜き出す、とかBGMだけ取ってくるというのが簡単にできるわけですね。 なお、コンテナはコンテナの上に載せることのできる映像や音声の形
本年もどうぞよろしくお願いします。ほんとはこんなの書いてる場合じゃないんだけど、軽く書いてみる。 Exif といえば言わずと知れた Jpeg 画像に封入できるメタデータの一種ですが、個人使用では非常に便利なものの、昨今流行の画像共有サイトを中心に Exif データによる情報流出がいろいろ話題になっていたりします。カメラ種別や撮影日時はまだ良いものの、GPS位置情報までもが封入されていたりするとなかなか厄介で、いっそのこと Exif データだけ丸ごと削除してしまう方が何かと無難で、特に API を叩いて画像をアップロードするような場合、専用ツールによるヘッダ除去は非常に面倒くさいため、スクリプト内部で処理してしまうと楽です。 というわけで、 Python による Exif ヘッダを除去する実装例。 Exif の仕様については既にいろんなサイトで紹介されているので割愛しますが、基本的には FF
d:id:RobinEgg:20090402:p1 で書いたようなワンセグに限らず、通常のフルセグでも TS ファイルを分割して取得した AAC ファイルを faad/ffmpeg で読み込ませようとするとコアダンプを吐いたりエラーが出て処理ができなかった理由について。 特に、 ffmpeg では [libfaad @ 0x1538250]faac: frame decoding failed: Bitstream value not allowed by specification [libfaad @ 0x1538250]faac: frame decoding failed: Invalid number of channels Error while decoding stream #0.0 ...等というエラーが大量にはき出され、全く使い物になっていませんでした。 これは、放送波
前口上をいろいろ考えたけど長くなるので割愛。何が目的でこういうことやってるかわかる人へ。 きっかけ 前からコンポのスピーカーで音楽聴く派だった DVD の 5.1ch って面白いよね PT1 買った デジタル放送の音声は AAC 自分のPCには S/PDIF (TosLink)が付いてる*1 外部コンポに Dolby/AAC デコーダーが付いてればビットストリーム出力してやってそっちで鳴らせばいいんじゃね? しくみ PT1 関係の再生アプリにしろ、DVDの再生(もっぱら WMP)にしろ、音声は DirectX フィルタ(今回は ffdshow)を経由するので、Dolby/AAC のデータを S/PDIF にパススルーするように設定。どうやら AAC の信号をリアルタイムに Dolby 信号に変換して出力してるっぽい。ffdshow は clsid による開発版を使ってるけど、ベータ版でもい
環境 Ubuntu linux 9.04 x64 postfix eo (OP25B 適用済み) 事前準備 eo は OP25B を適用しているため、 postfix の main.cf に relayhost = smptauth.eonet.ne.jp:587 smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl/sasl_passwd smtp_sasl_security_options = noanonymous smtp_sasl_mechanism_filter = cram-md5を指定。 /etc/postfix/sasl/sasl_passwd に、 smtpauth.eonet.ne.jp:587 pop認証username:pop認証passwordを作成し、 # po
Asterisk の extensions.conf で Dial コマンドを発行して VoIP 機器を呼び出す場合の呼び出し音について。 PSTN 電話網の規格自体がそうなのか知らないけど、一般的な PSTN 網内での発着信においては、発信側端末で番号指定して発呼した時点で、どうやら着信側ゲートウェイ、つまり着信側端末の上流にある交換機に即繋がっているようで、呼び出し音*1は着信側交換機が発している模様。 なので、 Asterisk で exten => s, 1, Dial(0100, 30) とか単純に指定しちゃうと、着信時の呼び出し音は Asterisk ではなく、末端の VoIP 機器が生成して流しているようで、もしこの VoIP 機器の電源が落ちていたり、あるいは無線 LAN の非意図的な切断等で網から切り離されてしまっていた場合、 SIP 上では正常に呼び出しが行われているに
PSP で再生できるファイルフォーマットの情報を探していたら、未だに携帯動画変換君同梱分の ffmpeg を使った情報しか出てこないので、ここらで纏めておく。 携帯動画変換君の ffmpeg は既に随分と古いものになってしまい、内蔵の libx264 や libavcodec にも相当手が入っているので、あまりお勧めではないと思うんだけど操作が簡単だからか未だに愛用者が多いのも事実。 公式のリファレンスが一番よくまとまってた。にしてもリンクがほとんど張られてないんだよね…。 PSP™ (PlayStation®Portable) RSS チャンネル向けコンテンツ作成ガイドライン (PDF注意)の最終ページより抜粋。リファレンスの想定ファームバージョンは 3.30 で、現時点ではそれ以後のファームでの大規模改訂は行われていない模様。 Movie Format File Format Vide
図書館から借りてきた本があまりにひどいことになっていてキレてたらタイムリーにこんな記事が。 全国一の貸出冊数をほこる大阪市立中央図書館(西区)で、年間2千冊近い本や雑誌が、借り主に切り抜かれたり破られたりして廃棄されている。ファッション雑誌の人気モデルの欄や韓流スターのページがまるごと切り取られるなど、えげつない。 http://www.asahi.com/national/update/0425/OSK200904250065.html 先日、大阪市立図書館でとある文庫本を借りたのですが、中身がまさにえげつないことに。 この際借りた本のタイトルはどうでもいい。気にしないように。 これ血糊と鼻くそだよね?どういう読み方してたらここまで汚れるのか理解できない。ラノベとはいえ、まさか抜くお供にでもしてたわけはないと思いたいんだが…。これ以外にも汚れてる部分がありそうだけど、この部分だけで思いっ
最近新幹線に乗って地方へ出かける機会が多く、 GPS トラッキングとかして遊んでるのですが、 GPS ユニットの出力ログが日本測地系なので Google Maps 上で表示させるには測地系を変換する必要が出てきました。 なので、測地系パラメタを使う方法 を参考に、三次元直交座標を経由して変換する方法で実装してみました。ページにあったのは Perl だったので、今回は Python で書き直してみた。ていうか Python 3.0 系って 2.x 系から文法まで変わってるのな。びっくらこいた。 # coding: utf-8 import math # Radian RAD = math.pi / 180 # 日本測地系における赤道半径、扁平率、第一離心率 TKY = 6377397.155 tireT = 1/299.152813 ecT = tireT * (2 - tireT) # 世
Python の distutils でモジュールをコンパイルする際には、 Python のコアコンポーネントがコンパイルされた環境と同一のコンパイラがなければコンパイルできない、という非常に鬱陶しい有名な仕様が存在します。 が、今時 VS2003/2005 をわざわざ導入する気にはなれないのと、 distutils モジュールのソースをいろいろいじくるのは面倒くさいので、以下の設定を行うことでこの制限を回避することができます。 『HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework』に sdkInstallRootv1.1 を空白文字列でエントリ作成 環境変数 DISTUTILS_USE_SDK=1 と MSSDK=1 を作成 python setup.py build 追記 これで、無償配布されている VC9 / VC++ 9 Expr
先のエントリを書いた後、ぼーっと自分の携帯を見てて気がついた。原因は恐らく「ちかチャット」だわ。 たぶんソフトバンク独自のサービスっぽいけど、公式ページを見てもらえばわかるとおり、 Bluetooth®を使って、近く(半径約10m)にいる友達2〜8人と通信料不要でチャットができる。 ちかゲーム/ちかチャット | サービス | モバイル | ソフトバンク というサービス。DSで言うところのすれ違い通信に似たようなもの、といえばわかりやすいかも。ググったら増田のエントリが出てきて驚いた。 で、これがプリインストールされている機種が、 932SH 923SH 922SH 921SH 920SC 920SH YK 920SH 913SH 913SH G 912SH 911SH 910SH 905SH 904SH 825SH 824SH Elegant Line 823SH 822P 821P 82
前々からの高木先生の連載エントリを読んで気になったので、丁度東京へ出向く機会があったので試しに実験してみた。 高木浩光@自宅の日記 - Bluetoothで山手線の乗降パターンを追跡してみた , ユビキタス社会の歩き方(6) Bluetoothの「デバイスの公開」「検出可能にする」.. 高木浩光@自宅の日記 - 首都高速都心環状線でBluetooth追跡できるか + 続・山手線 高木先生は独自?にコードを書かれていたようだったけど、私はスキルもなく準備する時間もなかったので、鞄の中のパソコンで linux を動かして、 cron で定期的(約1分おき)に hcitool を呼び出して連続スキャンし、結果をシェルスクリプトで整形して出力する、という手法でデバイスIDをスキャンしてまわった。hcitool は自動的に端末名称も含めてスキャンしているようなので、そこから端末名称を検出できるものは
http://d.hatena.ne.jp/wiseler/20090228/p1 記事の内容についての論評は避けるけど*1、個人的には新規のカジュアルコピー予備軍を抑制するだけでも随分と効果はあると思うけどね、現状があまりにも酷いから。 まぁ当然、判決が出ても「新規の」流通は止められるけど、「既に」流通してしまった製品についてはもうどうしようもないわけで、既にマジコンを持ってる人間の不正コピーをどう抑制するかが今後の課題ではないかなと思うんだが、その辺は本職の法務部隊の方々が考えておられるでしょうからツッコミは野暮というもの。 で、ここから本題なんだが、ブコメ見てて気になったのが、 Homebrew ソフトの存在っていまいち国内じゃ知られてないの? NOV1975 (中略)/Winnyのポエム流通より現実味のない話。 はてなブックマーク - 何のためのマジコン販売禁止なのだろうか - w
開発言語は C#。 状況 Picasa Web API を叩いて写真をアップロードしようとすると、しばしば例外 GDataRequestException が起こる。再現性が取れず、成功するときもあれば枚数に関わらず発生することもある。 --------------------------- エラー --------------------------- System.Net.WebException: 基礎になる接続が閉じられました: 接続が予期せずに閉じられました 場所 System.Net.HttpWebRequest.GetResponse() 場所 Google.GData.Client.GDataRequest.Execute() Execution of request failed: http://picasaweb.google.com/data/feed/api/use
バイナリ とりあえずバイナリがなければ話にならないので、適当にHDDの中を探してみるか、グーグル先生に尋ねてみましょう。 もしなければ、 FFmpegダウンロード お気に入りの動画を携帯で見よう からダウンロードさせてもらいましょう。定期的にffmpegの最新版をSVNからチェックアウトしてコンパイル・配布してくれています。携帯動画変換君に付属しているものを使っても良いのですが、如何せんビルド日時が古く*1、新たにダウンロードし直した方がいいかと。 ダウンロードしたアーカイブを解凍し、適当なフォルダに移動します。可能ならパスの通ったフォルダ(C:\windows とか)にコピーするのが望ましい。 尚、最近の配布分については3G携帯向けlibamrは含まれていません。非GPLなコードが使われているようなので、再配布禁止になってしまったようです。詳しくは: FFmpeg rev.11662 ダ
次のページ
このページを最初にブックマークしてみませんか?
『eggshell blue』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く