線形帰還シフトレジスタ(せんけいきかんシフトレジスタ、英: linear feedback shift register, LFSR)は、入力ビットが直前の状態の線形写像になっているシフトレジスタである。 値域が単一のビットとなる線形写像は、XORおよびXORの否定だけである。したがって、線形帰還シフトレジスタとは、その値を構成するビット列の一部の排他的論理和を入力ビットとするシフトレジスタである。 LFSR の初期値をシードと呼ぶ。レジスタの動作は決定的であるため、レジスタが生成する値の列はその状態によって完全に決定される。同様に、レジスタの取りうる状態は有限個であるため、最終的に周期的動作になる。しかし、帰還関数をうまく設定したLFSRは乱数のようなビット列を生成し、その周期も非常に長い。 LFSRの用途としては、擬似乱数生成、擬似ノイズ生成、高速デジタルカウンタ、白色化などがある。L
数学とコンピュータⅡ advent calendar 2017の記事です。連分数を用いてplain RSA暗号が攻撃できる(Wiener's attack)という定理の概要を説明します。また、Wiener's attackをR言語の関数として実装します。 目次 1.plain RSA暗号とは? 2.Wiener's attackとは? 3.攻撃の要:とても近い値を持つ2つの有理数 4.連分数近似:近い有理数をあぶりだす方法 5.試しにやってみよう 6.公開鍵だけで所望のk/dが得られたか判定する方法 7.Wiener's attackが可能な秘密鍵dの大きさ 8.R言語でWiener's attackの関数を実装しよう 1.plain RSA暗号とは?plain RSA暗号とは、公開鍵暗号の一種です。公開鍵暗号は他者に公開する公開鍵と他者には秘匿にする秘密鍵からなります。平文を送る側は公開
QMLのTableView(と言うか、TableViewが参照するModel)の使い方が、ドキュメントを読むだけではわかりにくかったので、簡単なサンプルを作ってみた。 https://github.com/false-git/qtsamples の、TableViewDemo に置いてある。 ビルドして起動すると、二つのTableViewが表示される。 左が QML の ListModel を Model とした TableView で、右が C++ の QAbstractListModel を Model とした TableView である。 画面下部にテキストフィールドとボタンがあり、行の追加、更新、削除ができるようになっている。 また、アプリケーションのメニューに Settings と言うものがあり、そこでソートのあり/なしを選ぶことができる。 ソースの読み方 ListModel L
なぜPythonでGUIなのか? なぜ Ruby, JS, C# ではなくPythonなのか? Python言語自体が書きやすい (vs JS) WindowsでもMacでも動作する (vs Ruby, C#) データ分析や画像処理などのライブラリが充実している ctypesやCythonでC/C++のコードを呼び出せる Pythonの主なGUIライブラリ tkinter 標準添付 turtle 標準添付・カメさんがカワイイ Kivy 新しい PyQt5 今日のオススメ QtはOSSのアプリケーションフレームワーク 1992〜 (現在 v5.8) C++ 製 クロスプラットフォーム(OSネイティブのスタイルで描画) 豊富なウィジェット _ 使いやすいAPI(シグナル、レイアウト、MV) ツール (IDE, UIデザイナ) PyQt5 は Qt5.x のラッパー SIP というツールでC++
Private Sub f1(ByVal v as Integer) If v < 0 Then Err.Clear Err.Raise Number:=999, Description:="something went wrong" End if End Sub Private Sub f2() On Error Goto Have_Err Call f1(-1) Have_Err: If Err.Number = 999 Then MsgBox Err.Number & vbCrLf & Err.Description Exit Sub End If End Sub 見ての通り例外のようなことができる。 プロシージャf1 ではErrオブジェクトにエラー値の設定のみしておき、プロシージャ呼び出しでエラーをチェックする。 これはErrオブジェクトがパブリック・スコープを持つため可能になる。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く