2011年9月28日水曜日

有料放送とB-CASカード

もうすぐBSデジタルの新規有料チャンネルがいくつか開局しますし、
この機会にそれらとB-CASカードがどうかかわっているかについて
少々書いてみたいと思います。

地上波でもBSでも日本のデジタルテレビ放送はB-CASカードに依存しています。
これは放送されている動画や音声は暗号化されており、
B-CASカードがなければそれを復号化して視聴できないということです。

地上波ではアナログ1チャンネル分の周波数帯を13のセグメントに分けて
マルチキャリアでデータ伝送をしていますし、
BSではアナログ1チャンネル分を時分割で48スロットに分けて
複数チャンネルを送信しています。
とりあえずこれら仕組みによって送信されたデータは、
チューナによってデジタル1チャンネル分の
ビットストリームデータとして受信されます。
OSIっぽくいえば、このデータがネットワーク層から受け取る
TCP(実際にはUDPの方がしっくりする)パケットということになるでしょう。

実際には受け取ったデータはMPEG2TSパケットということになります。
MPEG2というと映像のデータ規格と思われがちですが、
音声のAACやコンテナのTS,PSなんてものの規格を含んだ
わりと壮大なものなんですね。
このコンテナとは一連の、そして一本のデータの流れのなかに
複数データを埋め込む方法のことです。
テレビ放送の場合、映像情報や音声情報だけでなく
データ放送用のコンテンツデータや
時刻情報や制御情報を含めなければならず、
それぞれを188バイトのTSパケットに細切れに収めて
それを適切につないでいったものが放送波に乗っかっています。

各TSパケットにはPIDが設定されており、
このPIDでそのパケットが何の情報なのかがわかるようになっており、
同一PIDのパケットを集めて画像や音声データを取り出します。
PIDはTCP(UDP)ポート番号みたいなものなんですね。

ところで、映像情報などは暗号化されています。
もともとは勝手に観られると放送局が大損する
有料放送のための暗号化なのですが、
なぜか無料放送の地デジやBSも暗号化されています。
で、前置きが長かったのですが、
この暗号化された映像がどうやって復号化されるかということです。

実は暗号化された映像を復号化するための鍵はTSパケットのうち
ECMと呼ばれるパケットに格納されています。
ならばお金を払ってなくても
ECMが読み取れれば誰でも映像が観れるということになるのですが、
そうはうまくいかず、ECMも暗号化されているのです。
もちろん映像復号用の鍵とは違う鍵が必要です。
ではECMの復号用の鍵はどこにあるのかというと、
これはEMMと呼ばれるTSパケットで放送されています。
そしてEMMもまた暗号化されています。
その暗号を解くのがB-CASカードなのです。

B-CASカードには一枚一枚に
別の識別番号(ID)とEMM解読鍵が書き込まれています。
テレビは受信したEMMの中から
自分にささっているB-CASカードのID用のデータを探し、
それをB-CASカードに送ります。
B-CASカードは自身でEMMのデータをEMM解読鍵を使って復号化し、
ECMの復号鍵を取り出すのです。
それぞれのB-CASカードに書き込まれたIDと鍵は
B-CASカードの管理会社が情報として保存しており、
放送局はそれぞれのB-CASカードのためにEMMを放送しているのです。

ちなみにB-CASカードのIDは10000000000000000通りあるので、
放送局は最悪1京毎のB-CASカード用にEMMデータを送る羽目になりますし、
そもそもそれ以上のB-CASカードは発行できないことになります。
まあ現実的にそんな日が来るとも思えませんが、
私の手元にはすでに9枚のB-CASカードがありますし、
意外と早く100億枚ぐらいは行っちゃうかもしれませんね。

0 件のコメント:

コメントを投稿