2021/4/28 に東京大学で開催された<AIセミナーシリーズ> 「Arm CPUにおけるSIMDを用いた高速計算入門」講演会で使用した資料になります。
![SSL/TLSの基礎と最新動向](https://cdn-ak-scissors.b.st-hatena.com/image/square/2264986ea3e2359c5ccea5b462b65f0189e8f476/height=288;version=1;width=512/https%3A%2F%2Fcdn.slidesharecdn.com%2Fss_thumbnails%2Fsecuritycamp2015tls-150813065402-lva1-app6892-thumbnail.jpg%3Fwidth%3D640%26height%3D640%26fit%3Dbounds)
この記事は、HTTP2 Advent Calendar 2014の6日目のエントリーです(2日前にフライイング公開してます)。 1. はじめに、 HTTP/2仕様の標準化作業は、WGラストコールも終わり、今後IESGレビューやIETFラストコール等の大詰めの段階に来ました。来年のRFC化に向けてまだまだ予断を許しませんが、プロトコル設計自体の作業はほぼ完了し、後はすんなり行くことを祈るばかりです。 こんな状況なのに気が早いですが、もう既に標準化後を見据え、HTTP/2の機能を使った新しい仕組みを作る動きが始まっています。 そこで今回はHTTP/2技術の応用として、HTTP/2の「サーバプッシュ機能」と今ホットなブラウザの新技術「Service Worker機能」を組み合わせた次世代のプッシュ機能「Web Push/Push API」について書いてみたいと思います。 ただ、個人的に色々タスク
対象OS:Windows 2000 Professional/Windows XP Home Edition/Windows XP Professional/Windows 2000 Server/Windows 2000 Advanced Server/Windows Server 2003 解説 TCP/IPネットワークがつながらないといったトラブルが発生した場合、まず確認するのはpingコマンドによる応答があるかどうかであろう。これにより相手のサーバが生きているかどうかや、そのサーバまでの経路が有効であるかどうかなどが分かる。 そしてpingテストがパスすれば、次は特定のTCPやUDPのポートに対する接続テストを行い、サーバとクライアント間で通信が正しくできているかどうかを調べる、というのが一般的なところだろうか。 この接続性のテストのためにはいくつかの方法やツールがあるので、ここで
はじめに 今回は、iptablesを用いて、IPパケットのディスティネーションアドレスを書き換える「DNAT」を実現する例を紹介します。 DNATは、パケットの送信先IPアドレス情報を書き換える技術です。Aホストあてのパケットを、DNATで、Bホストあてに変更することができます。前回解説したiptablesを使ったLinuxルータにDNAT機能を追加すれば、ルータを通過するWebサーバあてのパケットをHTTPプロキシサーバに向けることができます。 DNATで透過型プロキシサーバを実現する NAT(Network Address Translation)とは、パケット中のIPアドレスを書き換える技術です。本連載では、送信元(=ソース)を書き換える場合をSNAT、送信先(=ディスティネーション)を書き換える場合をDNATと呼んでいます。 前回はSNATとIPマスカレード(またはNAPT)を使っ
サーバの状態を長期・継続的に取得してビジュアライズすることで、いままで見えなかったことが見えるようになる。これを実現するソリューションがMRTGだ。(編集局) 前回は、コマンドラインベースでサーバの情報を取得する方法をいくつか紹介しました。「現在」の状態を確認するだけであれば前回紹介したツールでも問題ないのですが、システムを監視する場合、「その瞬間」のデータよりも長期的なデータの推移を見たいという方が多いと思います。 また、多くの場合、人間がシステムを常時監視するわけにはいきません。そのため、定期的にシステムを監視する操作を行い、監視項目が設定した閾値を超えたらメールで管理者に通知するといった処理が必要になります。 今回は、上記の要件を満たすためMRTGというソフトウェアを利用することを考えてみます。 MRTGとは MRTG(Multi Router Traffic Grapher)は、S
注意 内容については一切保証しません。 ここでは、主に W3C ML での議論や各種仕様などに基づいて書いています。 ここに書かれていることが正しいかどうかは、自身で判断して下さい。 事実としておかしいところなどは、コメントでどんどん指摘して下さい。遠慮はいりません。 ただし、このエントリでは「form が PUT/DELETE をサポートするべきかどうか?」の議論はしません。 「REST の是非」や「PUT/DELETE の意義」についても議論する気はありません。 ここでやっているのは、あくまでもどういった議論の末現状があるのかの調査です。 そうした意見がある場合は、 W3C などに投稿するのが最も有益だと思います。 History 2014/03/29: 公開 2014/03/29: XForm と XHTML の関係を明確化(thanx koichik) 2014/03/29: HT
curlはwget, lwp-request(GET, HEAD), lynxと同じようなcliのhttp client。だと思ってたらもっと機能があるようなので、man curl読んで色々調べてみた。HTTP(S)以外にもかなり対応してた。 curl is a tool to transfer data from or to a server, using one of the supported protocols (HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP or FILE). とりあえず良く使いそうなhttp, ftp関連のメモ。DLだけじゃなくて、アップロードもできるのが素晴らしい。 基本 syntax curl [optinons] URL URL It will then default to HTT
This is just amazing. In 20 lines of node.js code and 10 minutes of time I was able to write a HTTP proxy. Take a look: var http = require('http'); http.createServer(function(request, response) { var proxy = http.createClient(80, request.headers['host']) var proxy_request = proxy.request(request.method, request.url, request.headers); proxy_request.addListener('response', function (proxy_response)
Androidスマートフォンでのアプリの通信をブロックするアプリの動作原理分類 プロセスID/iptables方式 低負荷・アプリ別・root必須 ・DroidWall https://play.google.com/store/apps/details?id=com.googlecode.droidwall.free&hl=ja アプリごとにiptables(AndroidOSのベースのLinuxに組み込まれているファイアーウォール)でフィルタする。 iptableを制御するためにroot化が必要で、アプリのIDからフィルタルールを動的生成するために、常駐して実行中アプリを監視する必要がある。原理的に起動直後の通信を取りこぼす場合がある。 フィルタリング自体はAndroid自体アプリではなく、OS側が行なってくれるので、CPU負荷は少ない。 接続先や内容でフィルタすることも不可能ではない
Squid: Optimising Web Delivery Squid is a caching proxy for the Web supporting HTTP, HTTPS, FTP, and more. It reduces bandwidth and improves response times by caching and reusing frequently-requested web pages. Squid has extensive access controls and makes a great server accelerator. It runs on most available operating systems, including Windows and is licensed under the GNU GPL. Making the most o
‐ programming, open source, os, and a handful of tips Pythonでは、HTTPやFTPなどでファイルの送受信をするモジュールとして「urllib」と「urllib2」が用意されている。使い方も似ていて、どちらも引数としてURLを与えてurlopen()関数を呼び出すと自動的に対応したプロトコルでURLにアクセスしてデータを読み出せる、というものである。しかし、似たような名前で似たような機能を持つこの2つ、何が違うのかが明確にはドキュメントに記述されていない。そのためどちらを使うべきか迷って、そのたびにGoogleのお世話になるという状況だったのでざっとまとめてみよう。 外から見える違いとしては、urlopen()の引数としてurllibはURL文字列のみを受け付けるのに対し、urllib2ではurllib2.Requestクラスを受け
11.20 cookielib -- HTTP クライアント用の Cookie 処理 cookielib モジュールは HTTP クッキーの自動処理をおこなう クラスを定義します。これは小さなデータの断片 - クッキー - を要求する web サイトにアクセスする際に有用です。クッキーとは web サーバの HTTP レスポンスによってクライアントのマシンに設定され、 のちの HTTP リクエストをおこなうさいにサーバに返されるものです。 標準的な Netscape クッキープロトコルおよび RFC 2965 で定義されている プロトコルの両方を処理できます。RFC 2965 の処理はデフォルトではオフになっています。 RFC 2109 のクッキーは Netscape クッキーとして解析され、のちに RFC 2965 として処理されます。cookielib はデファクトスタンダードの Ne
python2.5だと素直にできないらしい。 urrlib2 opener for SSL proxy (CONNECT method) « Python recipes « ActiveState Code に参考ソースがあった。コメント欄に以下のパッチが書かれていたのでそれを取り込みつつちょっと手直し。 HTTPSのリダイレクト対応 認証プロキシ対応 最終的なソースは以下の通り。 ## {{{ http://code.activestate.com/recipes/456195/ (r2) # urllib2 opener to connection through a proxy using the CONNECT method, (useful for SSL) # tested with python 2.4 import base64 import cookielib impo
urllib — URL handling modules¶ Source code: Lib/urllib/ urllib is a package that collects several modules for working with URLs: urllib.request for opening and reading URLs urllib.error containing the exceptions raised by urllib.request urllib.parse for parsing URLs urllib.robotparser for parsing robots.txt files
Availability: not Emscripten, not WASI. This module does not work or is not available on WebAssembly platforms wasm32-emscripten and wasm32-wasi. See WebAssembly platforms for more information. The module provides the following classes: class http.client.HTTPConnection(host, port=None, [timeout, ]source_address=None, blocksize=8192)¶ An HTTPConnection instance represents one transaction with an HT
注意(追記:2013.03.22) もうこの情報は古いので、いまはHTTP系の処理はrequestsを使ったほうがいいです。 Requests: HTTP for Humans — Requests 1.1.0 documentation 動機 Web API使ってるとでてくる使い回しをメモ。 方法 まずはオーソドックスに GET import urllib url = 'http://d.hatena.ne.jp/ymotongpoo' params = urllib.urlencode({'hoge':1, 'fuga':2}) f = urllib.urlopen(url + '?' + params) # paramsはhoge=1&fuga=2の形になっている print f.read() POST import urllib url = 'http://d.hatena.ne.
baseurl = "https://trading1.sbisec.co.jp/ETGate/" def write(str): f = open("out.html", "w") f.write(str.encode("sjis")) f.close() def build_opener_cookie(cj): import urllib2 ch = urllib2.HTTPCookieProcessor(cj) opener = urllib2.build_opener(ch) return opener def get_form(opener): r = opener.open(baseurl) html = r.read().decode("sjis") return html def parse_form(html): from BeautifulSoup import Bea
今書いているプログラムでhttps通信を使ったログイン処理っぽい事をする必要が出てきたのでPythonのマニュアルを読んで、簡単にできることがわかりました。urllib2を使うみたいだ。 http://www.python.jp/doc/2.5/lib/urllib2-examples.html サンプルとして、はてなにログインするプログラムを書きました。 import urllib2 url = 'https://www.hatena.ne.jp/login' name = '' # type your own username password = '' # password req = urllib2.Request(url, 'name=%s&password=%s' % (name, password)) #req.add_header('hoge', 'fuga') cont
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く