偽デジタル写真屋日報@はてな保管庫

はてダ終了に合わせてログ移行させました。ところどころリンク先が死んでるかもしれませんが仕様です。

Nikon D2X/D2Hsにおける一部暗号化されたRAW形式についての話

なんかニュース読みつつうだうだしている間に話題の旬を通り過ぎたような気がしないでもないですな。でももうある程度書いてしまったのでこのまま上げることにします。周回遅れなのは承知の上ってことで。

言い訳

今回の記事は、CNET Japanに掲載された「ニコンの画像暗号化技術、解読される--アドビなどへの影響は?」を基準にして書いています。本家CNETの原文はほとんど目を通していません(すいません、全然英語の読解力がないもので)。
また、私自身は画像フォーマット内部の解析ができるような技術力も持ち合わせていないので解析そのものの話についてはからきしです。間違ってることを書いていたらコメント等で指摘願います(私の知識不足でどう間違ってるのかさえ理解できなかったらごめんなさい)。

そもそも今回の話題の中心になっているDave Coffinさんって何者なのよ

各社デジタルカメラのRAW形式データを現像するプログラム「dcraw.c」の作者さんです。

dcraw.cってどんなプログラム?

ソースが公開されているRAW現像ソフトとしては元祖になるんじゃないかなぁ。かなり古くから存在し、地道にバージョンアップを繰り返して現行のRAW形式の大半はこれで現像ができるようになっています。また、ソースが誰でも読める状態になっているのでデジタルカメラのRAW形式データを解析しようと考える人は必ずと言っていいくらいお世話になっているのではないでしょうか。
ちなみに、Photoshop CSのCamera RAW Pluginのベースになっているのもこのdcraw.cです(そしてこのことが今回の騒動の原因となっているの一部分に関わってくる)。

そもそもどこが暗号化されているの?

NEF(Nikon RAW形式)形式そのものが暗号化されていたように取られている人もいるようですが(自分も最初そう読んだ)、実際に暗号化されているのはホワイトバランスが記録されている部分のみのようです。さらにNikonデジタルカメラのRAWデータが全て暗号化されていると思われている方もいるようですが、部分暗号化されたRAWデータが生成されるようになったのは今のところNikon D2Hs/D2Xのみです。今後発売されるNikonデジタル一眼レフ(D50とか)がどうなるかは今回の騒動の結果次第ってところでしょうか。

ということは以前から純正ソフト以外でもNikon RAW形式は現像できたの?

正解。これまでもサードパーティの現像環境はありました。だから今回のCNET Japanで書かれている「純正の有償ソフトでないと現像処理が行えなかった」というのは表現が足りていません。正確に表現するためには「Nikonの新しいデジタル一眼レフでは」という一文を足すべきでしょうね。

0509追記1

このニュースを見て「NikonViewやPictureProjectならNEFを現像できるんだから有償ソフトじゃなきゃ現像できないという報道は間違いだ!」とか言ってる人がいましたけど、正直この2本については「絵が作れる」以上のことは大してできる訳じゃないんで現像ソフトと呼ぶのはなんだかなぁ…という思いがあったりします。どっちかというとこの2本は画像管理+閲覧に特化したソフトで、現像部分はおまけですから。

何のために暗号化されていたの?

本心の部分についてはNikon側が公式にコメントを出しているわけではないのであくまで推測の域を出ることはありませんが、やはり「RAWデータもNikonの製品の一部である。ゆえに自社製品に対してプロテクト的に暗号化コードを入れるのは当然」みたいな考えから今回の暗号化の流れに至った、ということはあるのではないでしょうか?
まあメーカーのサポートの立場に立って考えればどこの馬の骨とも分からないソフトでデコードされて画像に文句を言われたらかなわんでしょうし、また純正ソフトで現像した結果までがメーカーの絵作りであるという自負もあるでしょうからね。

他のメーカーでもこういう細工はされているの?

なんか一部では「こんな細工をしてるのはNikonだけだ」みたいな書き方をしている人がいますがこれは間違い。部分的に暗号化を施してあったり独自の圧縮をかけていたりするメーカーは何社かあります。CNET Japanの記事内では「Canonは写真のメタデータを暗号化することはしていない」って書いてますけど、Canon RAW形式はデータそのものに独自圧縮がかかっていて解析し辛いので、見方によってはNikonよりタチが悪いともとれます。

0509追記2

dcraw.c公式に2005.05.09現在掲げられている文章を引用。

A note about metadata encryption:

A firestorm of controversy recently erupted when Thomas Knoll of Adobe accused Nikon of encrypting the white balance data in the D2X and D2Hs cameras, thus preventing Adobe from fully supporting these cameras.

I cracked this encryption on April 15, and updated dcraw.c and parse.c on April 17. So "dcraw -w" now works correctly with all Nikon cameras.

This is not a new problem. Phase One, Sony, Foveon, and Canon all apply some form of encryption to their raw files. Dcraw decodes them all -- you can easily find decryption code by searching for the ^ operator.

Compression is not encryption. Phase One and Sony do encryption only. Kodak does compression only. Canon, Nikon, and Foveon compress the image data and encrypt some of the metadata.

最後の段落を斜め読みすると「Phase One/Sonyは暗号化のみ、Kodakは圧縮、そしてCanon/Nikon/Foveonは画像に圧縮かけた上でメタデータ部分に暗号化がかかってる」ということでいいのかな。

じゃあなんで今になってこんなニュースが流れたの?

そう、RAWでいろいろ遊んでいた人間からするとその辺が分からんのですよ。元々暗号化だの圧縮だのかかってるファイルを解析してこういうデコードソフトが作られたということは、もっと前からメーカーから訴えられていても不思議はなかったのでは?と思うんですよね。正直謎。
ただ、なんとなく妄想ですけどPhotoshopがCSになってRAW現像をフォローした時点でこういう揉め事が起こる可能性があったのかな?なんてことは思います。CSの発売以前は今ほどRAW現像でいろいろ遊んでみるという層はそんなに多くなかったでしょうから。

RAWは誰のものなの?

絵の出方がフィルム依存だった銀塩と違い、デジタルカメラでは「メーカーの絵作り」って奴が要求されます。jpegとかtiffで撮る分にはそこに「メーカーの絵作り」って奴を入れることができても、RAWだとそうはいきません。そりゃそうです、現像如何で絵はどうとでも変わりますから。
でも一部のユーザーは「RAWでもjpegtiff撮りしたときとそっくり同じ絵を出してくれなければ困る」と言い出したりするわけで、そうなったらメーカーとしては「自社のソフトウェア環境でのみ現像できるRAWを作りたい」という方向を選ぶのは必然っちゃあ必然なのかな、とも思います。
ただねえ、自分の絵を作りたくて写真を撮っている側から見たら「RAWデータは撮影者のものであって当然」という意識があると思うんですよ。銀塩の頃に現像に独自の処方や独自のプロセスを入れることなんて当たり前のことだったわけだし、それと同様にRAWをどういうソフトウェアを通して処理するかなんてのも撮影者の自由と。
またメーカー純正環境でしか現像できない環境しかなくなってしまうと、「この機種はいつまで現像がサポートされるのか」っていう問題も出てきますよね。実際このニュースの後に出てきた「D30のデータは新しいRAW現像ソフト(Digital Photo Professional)だと現像できない」という話とかは今後いくらでも出てくる可能性を抱えているわけです。ただでさえデータの保存に頭を痛めることが多いのにこれ以上悩みの種を増やす要素はいらないですよ。

今後はどうなっていきそうなの?

撮影者に近い私としてはRAWデータに対してなるべく変な小細工は仕込まないでおき、また撮影者がいろいろな環境で現像して遊ぶことに対してメーカー側が寛容でいて欲しいなぁ、と思います。メーカー側としたらいろいろ言いたいことはあるかもしれませんが、でもネガの扱いをメーカーに指定されるってのはあんまり健全じゃないのと違います?

余談

これをうだうだ書いている間にPhotoshopCS2用のRAWプラグインでD2X対応コードが入ったみたいですね。AdobeNikonの間で手打ちでもあったのかな…?

さらに追記

dpreviewがcoffinさんと直接インタビューしてます。他社のRAWの暗号化云々はここの記事を(Excite翻訳しつつ)読んで書きました。