1. pysuijp
  2. Untitled project
  3. ucom

Overview

HTTPS SSH

ucom 開発日誌

ucom とは micro communication の略で、pythonで実装した サーバクライアント型のよくある送受信ツールである。

以下に、ucomのコア技術について解説する。

クラス構成

DataIo の公開メソッド

    • pack(id, msg):packeddata
    • unpack(packeddata):len, id, msg, md5

Client

Server

md5f

共通処理

バイナリファイルを扱う

例えば /bin/ls ファイル(バイナリ)を読み込む場合

tmp=open("/bin/ls") data=tmp.read()

引数にサイズを指定できるが省略時はファイル全部を読む

data は str 型となる(実際のデータはもちろんバイナリ)

len(data) にてデータサイズの取得可能

md5によるメッセージダイジェスト取得

import hashlib m=hashlib.md5.digest(data)

dataはstr型となるため、digestに渡せる

pythonにおけるバイナリデータの扱い

struct モジュールを使う

クライアント型

サーバ型

TODO

以上