2008年09月26日

Livedoor Blogで Windows Live Writer が 使えない理由

Windows Live Writer Beta 14.0.5025.904 がリリースされました。

しかし、Livedoorで利用できないので少し調べてみました。
どうやら、 atom 0.3 を使ってるらしいのですが、他の場所と WSSE認証の仕組みが違うようです。

Livedoorでは PasswordDigest文字列を作成するために

PasswordDigest = BASE64(SHA-1(NonceString + CreatedString + Password))

のような処理をしています。
ところが、他のBlogや Windows Live Writerは

PasswordDigest = BASE64(SHA-1(BASE64(NonceString) + CreatedString + Password))

という処理をしているようです。
ただ、大概のBlogは両方式対応できるようになっているので、クライアントソフトで Livedoor方式をとっても問題ないのですが、 Windows Live Writerはこの問題が顕在化してくるわけです。


旧方式のWSSE認証


新方式のWSSE認証

こればっかりは、Livedoorさんが対応してくれないとどうしよもないなぁ
ちなみに、はてなさんは Livedoor方式だったのですが8月末に1週間程度で対応してくれたそうです

Download:実験アプリ

Dim res, b64, wsse, tim, non, apiurl, username, password As String
Dim webreq As System.Net.HttpWebRequest
Dim webres As System.Net.HttpWebResponse
Dim shasp As New System.Security.Cryptography.SHA1CryptoServiceProvider()
Dim dtime As DateTime
Dim sis As System.IO.Stream

non = "0123456789ABCDEFGHIJ" ' 適当な20文字
apiurl = TextBox5.Text
username = TextBox1.Text
password = TextBox2.Text
webreq = CType(System.Net.HttpWebRequest.Create(apiurl), System.Net.HttpWebRequest)
webreq.Method = "GET"
webreq.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
dtime = DateTime.Now
tim = dtime.ToString("yyyy-MM-ddTHH:mm:ssZ")

If CheckBox1.Checked Then '旧認証
    b64 = System.Convert.ToBase64String(shasp.ComputeHash
System.Text.Encoding.UTF8.GetBytes(non & tim & password)))
Else '新認証
    b64 = System.Convert.ToBase64String(shasp.ComputeHash
(System.Text.Encoding.UTF8.GetBytes(System.Convert.ToBase64String
(System.Text.Encoding.ASCII.GetBytes(non)) & tim & password)))
End If
wsse = "UsernameToken Username=""" & username & """, PasswordDigest="""
& b64 & """, Created=""" & tim & """, Nonce=""" & System.Convert.ToBase64String
(System.Text.Encoding.ASCII.GetBytes(non)) & """"
webreq.Headers.Add("X-WSSE", wsse)
webreq.Proxy = System.Net.WebProxy.GetDefaultProxy()
webreq.Timeout = 5000000

TextBox3.Text = webreq.Headers.ToString()
Try
   webres = Nothing
   sis = webreq.GetResponse().GetResponseStream()
   Dim sres As New System.IO.StreamReader(sis, System.Text.Encoding.GetEncoding
 ("UTF-8"))
   res = sres.ReadToEnd()
   TextBox4.Text = res
Catch exc As System.Net.WebException
   If exc.Status = System.Net.WebExceptionStatus.ProtocolError Then
      webres = CType(exc.Response, System.Net.HttpWebResponse)
      TextBox4.Text = webres.StatusCode & ":" & webres.StatusDescription
   Else
      TextBox4.Text = exc.Message
   End If
Finally
End Try


TrackBack:
livedoor Blog 開発日誌 : ブログペットなど外部から投稿するサービスをご利用のお客様へ
Windows Live Writer の WSSE 認証 - 大西日記
雑記帳?一応Weblog : Windows Live Writerが使えない
網の上の彷徨い人:Windows Live Writerを設定してみたぞ…
他力本願な日々。:実は下半期突入
Windows Live Writer Beta 日本語版登場、実際に使ってみました - GIGAZINE
「Windows Live Writer」はlivedoor未対応|歯科医院/医院/病院専門ホームページ作成|MMP
木々ノ日記@livedoorblog:WindowsLiveWriterを使ってみようと思ったけどlivedoor blogでは使えないのかな。
今日の気分はバリいくつ? » Windows Liveの新バージョンを試す
AbderaつかってみたけどWSSEでやられる。 - 高温処理済みコースケ

Windows Live WriterではてなダイアリーAtomPubにチャレンジしてみた。 - SharpLab.
Ruby で livedoor blog の Atom API にアクセス - WebOS Goodies
レッドとザウルスの甘い生活:PHPでLiveDoorBlogの投稿その後、そしてRubyへ
Visula Basic 2008からAtom API でLivedoorに投稿してみるみる: VB2008 初心者が作る入門プログラム
リッチャンハ カワイイデスヨ: さっそくWindows Live Writer使い忘れたw
Windows Live Writer Beta(Build 14.0.5025.904)をWindows 2000にインストールできたので記念パピコ - KUMA TYPE

livedoor blogの投稿にWindows Live Writer - livedoor ナレッジ
フリーソフトのWindows Live WriterをLived - livedoor ナレッジ
Windows Live Writerを使ってlivedoorブロ - livedoor ナレッジ


blackwingcat at 08:16│Comments(0)TrackBack(0) この記事をクリップ! トピックイットに投稿する Blog | Windows全般

トラックバックURL

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔   
 
 
 
livedoor プロフィール
My PC
SNOWSTORM(P5E3 Premium)
OS:Win2000AdvancedSv
CPU:Xeon(4Core) 2.83G
Memory:8G
VGA:GeForce9800GTX+
HDD:SSD(32G)
    +SATA(540G+180G)
Crystal SCR:256640
SNOWCRAB(ThinkPad X200)
CPU:Core2Duo 2.4G
OS:Win2000Pro + Vista Business
Memory:4G
VGA:Mobile Intel 4 Express
HDD:SSD(64G)
Crystal SCR:91668
SNOWLEO(MA206J/A)
OS:OSX 10.4 +
   Windows2000Pro
CPU:Core2Duo 1.83G
Windows2000Pro(Solo動作)
Memory:2.5G
VGA:Mobile Intel GMA945
HDD:SATA(80G)
Crystal SCR:24061
記事検索
訪問者数

    今週のアクセス数

    Win2000お勧め
    お勧め記事
    lolifox 0.3.8.x
    WindowsのシャットダウンTips
    Fox Launcher
    ウィルス感染を手動で見つける方法
    Dependency Walker 日本語化
    Ultra VNC 1.0.6/1.0.8 を日本語化
    IME補完計画
    BSoD(ブルースクリーン)特集
    デフラグ時の4つの心得
    不明なデバイス探し
    SETUPAPI/NTDLLBugFix
    DNSデボルブ用更新[KB957579]
    最新 update.sys!
    4Thread以上のCPU最適化
    Win2000マルチコアで最適化
    Windows 2000の通信速度改善
    内蔵簡易FireWallを使う
    ワームに感染しないインストール
    Remote Desktop Client
    IME 辞書 Tips
    Win2000用セキュリティSOFT
    不要なファイルの削除
    Win2000カスタマイズ
    便利なキーボードショートカット
    9月末まで使える体験版セキュリティ

    非対応アプリ動作編
    Vegas Movie Studio 9
    EyeBall Chat
    ・CanonPowerShot[Soft/DPP]
    Logicool Mouse
    Microsoft IntelliPoint
    Google SketchUp Pro 7
    dance mixer
    Lismo Port
    DivX
    SONY ScreenSaver
    mixi アプリ
    mixi Station
    DivX v7.x
    ニコニコムービーメーカー(動画)
    RC-S330 PaSoRi
    Finale 2009
    ZoneAlarm 8.0
    ルナティア Online
    ストリートギアーズ
    xfy Blog Editor
    ATI Legacy Driver 9.8
    ATI Radeon Driver 8.1x/9.x
    ATI Ahci/Raid Driver
    IntelMatrixStorageManager7.6
    Photoshop Elements 7
    Premiere Elements 7
    PowerShell 1.0
    ai sp@ce
    電脳フィギュアARis
    VOCALOID2 ミク・リンレン
    ATOK 月額版(2008)
    Google Chrome/SRW Iron
    Evernote
    Media Player 10
    iTunes 7.6.2
    iPod Touch/iPhone Driver
    QuickTime 7.5x/7.6x
    foobar2000 9.5.x/9.6.x
    RealPlayer11
    Safari3/4.0
    ShockwavePlayer10/11
    Windows Live Writer
    Live Messenger
    Veoh Web Player / Web TV
    Level-R

    追加機能・カスタマイズ編
    MSXML 4.0SP3
    DirectX9.0c(2009/Aug)
    MS09-062(Gdiplus.dll)更新について
    Unicode 制御文字
    DirectX9.0c拡張Kit
    Internet Explorer6 Bonus Pack
    夏時間(DaylightSavingTime)
    レジストリバックアップを取る
    IME2007
    Windows Media Bonus Pack
    XPSファイルビューア
    Windows Defender
    文字化け対策(FontLink)
    Meirio(KB927489)
    msconfig
    圧縮フォルダ
    Windows Movie Maker
    IE5.01/5.5/6タブ化
    MediaTypeChanger(EISA構成)
    Win2000 SP4 Support Tool
    kill/tlist with Debugging Tools
    sc.exe with Resource kit
    reg.exe
    TaskTray 256色化
    ISO仮想CD/DVDドライバ
    IE6高速化とWSH 5.7/5.8
    MS Baseline Security Analyzer
    音声認識 API 5.1
    Text Service

    Win2000インストール編
    N10Jc
    ThinkPad X200(7454)
    Quad Core/X48/P5E3
    VAIO VGN Type S
    E6850搭載 サポートPC
    Let'snote CF-R6
    MacMini
    Dell LATITUDE D630
    Core i7 + X58 +ICH10R
    790FX + SB750
    Categories
    アーカイブ