クライアントアプリケーションのsecret keyは"公開される前提"と言ってるのもなんかおかしい気がする
マジこれじゃね。
シークレットにしたいけどできないキー
— id:ultraistさん (@ultraistter) 2013年3月12日
とりあえずユーザーエージェントとは明らかに違うと思う。UAはユーザーが変更をすることが前提とされているものだし、大体のクライアントアプリケーションにはUAの変更機能がある。
しかし、それは利便性を享受するための変更機能であって、たとえばUAというのがどういう使われ方をしているのかというと、「私はモバイルデバイスです、だからそれに適したHTMLをください」みたいな感じで運用されている。これはあきらかにOAuthのsecret keyとは存在目的が違う。
あくまでもOAuthのこれらのキーは一意にクライアントアプリケーションを識別するためのもので、ユーザーが用意に切り替えるべきものでもないし、基本的には公開すべきでない。自分のクライアントアプリケーションが不本意な悪用されないように難読化するというのはありだと思う。(たとえばDOSしてそのクライアントアプリがBANされるとかはありそうかなと思う)
しかし、Twitter社の公式アプリだけ制限を緩和するというのは明らかにおかしいし、それに対して反発として公式アプリのkeyを勝手に使うというのはありだと思っておりまーす。