読者です 読者をやめる 読者になる 読者になる

Scalaのお勉強3

book.impress.co.jp に取り組む。 今日は第4章、第5章。 解答を見まくった。(https://github.com/fpinscala/fpinscala) object Main4{ sealed trait Option[+A]{ def map[B](f:A=>B):Option[B]={ this match{ case None=>None case Some(a) => Some(f(a)) …

Scalaのお勉強2

昨日と同じく book.impress.co.jp に取り組んだ。今日は第3章。 object Main3{ private def tail[A](list:List[A]):List[A]={ list match{ case Nil=>Nil case x::xs=>xs } } private def setHead[A](head:A,list:List[A]):List[A]=head::tail(list) @annota…

Scalaのお勉強

書籍できちんとScalaを勉強することにした。この本。 book.impress.co.jp 今日は二章まで読んだ。 第二章の練習問題の解答が以下(合っているかは知らぬ) object Main2{ private def fib(n:Int):Int={ @annotation.tailrec def go(n:Int,a1:Int,a0:Int):Int…

Scalaでデジタル回路シュミレータ

Scalaでデジタル回路シュミレータ(仮)を作った。 こんな感じ。 ソースコードは以下の通り。 import scala.swing._ import scala.swing.event._ import java.awt.event._ import java.awt.image.BufferedImage import scala.collection.JavaConverters._ impo…

迷路作成&探索

迷路作成&探索をScalaで行った。 import scala.swing._ import scala.math._ import java.awt.Color import scala.collection.mutable.Queue import scala.util.control.Breaks.{break,breakable} abstract class MazeMaker(val step:Int){ val field=Array.…

ScalaでRSS読み取り(続き)

前回の続き lilyext.hatenablog.comこのサイトを参考にRSSの仕様をおおまかに把握した。 amarron.hatenablog.comで、雑に実装したクラス群が以下の通り import scala.xml._ import java.net.URL class RSS(val url:String,val sitealias:String,val title:St…

ScalaでRSS読み取り

import scala.swing._ import scala.swing.event._ import java.awt.event._ import scala.collection.mutable.ArrayBuffer import scala.io.Source import java.awt.Desktop import java.net.URI import scala.xml._ import java.net.URL import java.io.Fi…

Scalaでライフゲーム

Scalaでライフゲームを実装した。 import scala.collection.mutable.ArrayBuffer import scala.swing._ import scala.swing.event._ import java.awt.{Color,Graphics2D,BasicStroke} import java.awt.geom._ import java.awt.image.BufferedImage import sc…

Scalaで波のシュミレーション

scalaで波のシュミレーションを行った。 import scala.swing._ import scala.swing.event._ import java.awt.image.BufferedImage import java.awt.{Color,Graphics,Graphics2D,BasicStroke} import java.awt.geom._ class Field(val step:Int){ val s=0.1f …

Twitter4j,kuromojiを使ってみた

Scalaの練習のためにtwitter4jとkuromojiを使ってプログラムを書いた。 指定したユーザーの直近50ツイートの中に含まれる単語の頻度を求めた。 import twitter4j._ import com.atilika.kuromoji.ipadic.Token import com.atilika.kuromoji.ipadic.Tokenizer …

Scalaでbrainfuck

何となくScalaでbrainfuckの処理系を実装した。 package brainfuck sealed trait Inst case object PINC extends Inst case object PDEC extends Inst case object INC extends Inst case object DEC extends Inst case object OUT extends Inst case object…

ksnctf,Q31

Q31 KanGacha ksnctf.sweetduet.info length extension攻撃(伸長攻撃) 参考 Everything you need to know about hash length extension attacks » SkullSecurity このサイトを参考にした。 このサイトではMD5を例にとり伸長攻撃を実践していた。 これを例…

ksnctf、今日は2問

Q13 proverb ksnctf.sweetduet.infoシンボリックリンク攻撃 実行ファイルとflagの両方のシンボリックリンクを/tmpのサブディレクトリに作ってそこで実行。 flagが出力される。Q21 Perfect Cipher ksnctf.sweetduet.infoメルセンヌ・ツイスタ メルセンヌツイ…

久しぶり

久しぶりにksnctfを解いた。 Q7 ksnctf.sweetduet.infoぱっと見するとC言語だが空白として隠されているのがWhitespaceという言語。 ネットで調べて出てきたインタプリタに突っ込む。 Whitespace Interpreter written in JavaScript変換されたJavascriptのコ…

ガーバーファイル

はんだ付にリフロー法というのがあるというのはご存知でしょうか。 はんだ付というと普通ははんだこてでランドとリード線を暖め糸はんだでくっつけるというのが一般的なのですが、リフロー法はそれとは全く異なるはんだの方法です。 具体的には表面実装のパ…

4月になりました。

だんだん暖かくなってきましたね。 我が家で勝っている亀も冬眠から覚めたようです。 あぁ……新学年……憂鬱だぁ……

ざっとメモ

ksnctf.sweetduet.infoこれに挑戦。 問題文が表示され、その答えを入力していく感じ。 Ollydbgを使って不正解を弾く部分にブレイクポイントをセットして引っ掛かったら書き換えるのを繰り返し最後まで到達。最後の問はWhat is the flag?というもの。答えが入…

CTFその2

CTFに挑戦してみました。 挑戦したのはこの問題 ksnctf - 15 Jewel 今回は250ポイント。 まずはapkをダウンロードしました。セキュリティについての知識が問われているのによくわからないアプリを実機に入れるのってどうなんだろうか……とセルフツッコミをい…

HDDの調子がやばい。

PC

HDDの調子がなんかやばいです…… 明日あたり買いに行こうかな……

友人がCTFというものをやっているらしく、

わたしもやってみました、CTF。どうもCTFというのは"Capture the flag"の略で、コンピュータセキュリティについての知見を試す競技(?)だそうですね。ちょっと調べてみると、ksnctf ksnctf.sweetduet.info というのが初心者向けだそうで、早速試してみました…

ブログ始めました。

ブログ始めました。 日記として、備忘録として書いていこうと思っています。