ブックマーク / labs.cybozu.co.jp (8)

  • TAKESAKO @ Yet another Cybozu Labs: core dumpするコードの短さを競う「Core Golf」

    まめめもさんの core golf のエントリー(6/27)より さて、core dump するコードの短さで競う core golf はゲームとして成立するでしょうか。明らかに環境や処理系に依存するのでルールの決め方が難しいです。とりあえずうちでは core dump した C のコード (15B) 。もっと短くなる? core dumpの定義はいろいろあると思いますが、とりあえず手元の環境 CentOS Linux x64_64 で segmentation fault が起きるコードで。 (1) C言語で core dump 早速、core dumpした5byteのCのコード。 (via. λx.x K S K @ はてな - core golf) main; 実行結果 $ echo -n "main;" > a.c && cc a.c && ./a.out a.c:1: 警告: デ

    yupo5656
    yupo5656 2007/09/13
    a.c に a; だけと書いておいて(2バイト)、 gcc -c a.c && ld --entry=a a.o とか。↓うお、なるほど。
  • TAKESAKO @ Yet another Cybozu Labs: Shibuya.es発表資料 - SWF Binary Hacks ~evalのいばら道~

    Shibuya.js Technical Talk #3 - Shibuya.esで発表してきました。 とりいそぎ発表資料(修正バージョン)を公開したいと思います。 Binary Hacks ~evalのいばら道~ (PPT形式 - 556KB) 今回は急遽発表者の欠員が出たので、その埋め合わせで私がLTで発表することになりました。なので、発表ネタはラボの掲示板で1週間前にやりとりしたときの話をベースにしました。 当日資料を作り始めたので、ちょっと荒削りな内容になっています。すみません。 他の人の発表も結構最新の話題があったりして面白かったですねー。 こちらの写真はいぬビームさんの名刺交換の様子を撮影したものです。これは新しい!

    yupo5656
    yupo5656 2007/03/27
  • TAKESAKO @ Yet another Cybozu Labs: Web2.0時代のAjax Binary Hacks

    ※公開用にいくつか手を加えてあります 前フリが長いとのツッコミがありましたので、今回の発表内容を少し要約してみたいと思います。 1. GIF Format Hacks (Server side) まずは、任意のpixelサイズ(幅・高さ)を持った画像ファイルを固定長の35byteで出力する方法 #!/usr/bin/perl use strict; use warnings; sub create_gif { my $size = pack "S2", @_; return "GIF89a$size\xf0\x00\x00\x00\x00\x00\xff\xff\xff," . "\x00\x00\x00\x00\x01\x00\x01\x00\x00\x02\x02L\x01\x00;"; } print "Content-Length: 35\n"; print "Content-Ty

    yupo5656
    yupo5656 2006/12/21
    面白かった
  • TAKESAKO @ Yet another Cybozu Labs: Brainf*ckで100までの素数を列挙してみるテスト

    キミならどう書く 2.0 - ROUND 1 - LL Ring の前哨戦として「キミならどう書く 2.0」の開催です! お題は「100までの整数から素数を列挙せよ」です. ということで、世界最小のコンパイラ/インタプリタと言われている Brainf*ckで1~100までの素数を列挙してみました。 ちなみに brainf*ck で prgramming するのは今回が初めてです。 Wikipedia語版の解説より 開発者Urban Müllerがコンパイラがなるべく小さくなる言語として考案した。実際、Muellerが開発したコンパイラのサイズは123バイト(キロバイトではない!)、インタプリタは98バイトしかない。また、実行可能な命令はわずか8つしかない。 処理系には十分なサイズのbyte型配列とその要素のひとつを指すポインタがある。ポインタを「>」「<」命令で移動させながら、そのポイ

    yupo5656
    yupo5656 2006/06/26
    これはいい, bf
  • Kazuho@Cybozu Labs: 目指せバイナリアン (C-0.06)

    RPM からそのままインストールするか、あるいは、tar.gz を展開して configure && make && make install してください。 C-0.06 では、コンパイル結果をアセンブリで表示するオプション -S を追加しました。 [[kazuho@colin-types:~]]$ C -S -e 'printf("hello world\n")' .file "source.c" .section .rodata .LC0: .string "hello world\n" .text .globl main .type main, @function main: pushl %ebp movl %esp, %ebp subl $8, %esp andl $-16, %esp movl $0, %eax subl %eax, %esp movl $.LC0, (%esp

    yupo5656
    yupo5656 2006/05/21
  • Kazuho@Cybozu Labs: 秘密鍵を後置している MAC の危険性

    « Hash ≠ MAC | メイン | はてな認証 API への攻撃シナリオ » 2006年05月08日 秘密鍵を後置している MAC の危険性 先のエントリについて、結城さんが『「Hash ≠ MAC」の意味』に、まとめてくださっています。ありがとうございます。 16:37 追記: すいません。注1 の仮定が現実的でないように思います。よって、以下は成り立たないの攻撃は現時点では難しいかと。バイナリデータなら、TLV の L を、コリジョンデータの値が異なるところに着地させる可能なのかも。 ついでに、秘密鍵が後置されている場合のリスクについても考えていたのですが、 ハッシュ関数の衝突例が知られている 毎回選択平文攻撃が可能 ゴミデータの挿入が可能 (これは前置型と同等の条件) の3条件がすべて満たされている場合は、危険なんじゃないでしょうか。 というのは、同じハッシュ値をもつ "[ゴミ

  • TAKESAKO @ Yet another Cybozu Labs: ラボの引っ越し終わりました

    今日から新しいオフィスで仕事しています。 ちょうどこのタイミングで新しく仲間が一人増えて、 ラボの平均年齢がぐっと若返りました。(笑) 噂の机と座席ですが、いい感じです。 今ならまだ空席があるみたいです。 ラボでは気軽に揮発性の高いコミュニケーション(いわゆる雑談)を 促進するために、あえてパーティションをすべて取り払っています。 こだわりのエコ・サーバールームも新たに構築しています。 ネットワーク・サーバの移設も特に問題もなく、 担当者の私としてはとりあえず一安心です。 新しいオフィスの場所はこちら。 お近くにお立ち寄りの際はぜひ遊びにいらしてください。

    yupo5656
    yupo5656 2006/03/06
    サイボウズ
  • TAKESAKO @ Yet another Cybozu Labs: Binary2.0カンファレンス2005に行ってきました

    ふと自分の過去を振り返ってみると、人生で一番最初に触ったPC富士通の「FM-TOWNS」というi386(16MHz)のマシンで、学生時代にx86のハンドアセンブルやコードチューニングにハマッていた時期がありました。そんな私にとってBinary 2.0カンファレンス2005はとても楽しめる内容でした。期待以上に楽しかったです。簡単にカンファレスの概要と感想をレポートします。 追記:まとめのページができたようです。 ■ 1. Binary 2.0 時代の到来 - 高林哲 satoru先生による基調講演。なぜ今さらバイナリなのか? 「Binary2.0は高度なWeb2.0サービスの構築に必要不可欠な技術」というのは表向きの説明で・・・ 実は「Web2.0についていけない」のが音。(w 今のうちに新しいバズワードを提唱して「既得権益を確保」しておこうという狙い。 つかみはOK。会場大爆笑の渦で

  • 1