radare2/man/radiff2.1
NikolaiHampton 2c50dd0c59 Memory efficient implemenation of Levenshtein Distance for radiff2 (add -V)
Implemented the iterative two matrix row version from here: https://en.wikipedia.org/wiki/Levenshtein_distance
and here: http://www.codeproject.com/Articles/13525/Fast-memory-efficient-Levenshtein-algorithm

Memory usage was originally 200Gig for a couple of 100K files ~(sizeA*sizeB), now about ~(sizeB*2)...
2016-05-26 11:03:01 +02:00

67 lines
1.6 KiB
Groff

.Dd May 26, 2016
.Dt RADIFF2 1
.Sh NAME
.Nm RADIFF2
.Nd unified binary diffing utility
.Sh SYNOPSIS
.Nm radiff2
.Op Fl AabcCdDhOrspxv
.Op Fl t Ar 0-100
.Op Fl g Ar sym
.Ar file1
.Ar file2
.Sh DESCRIPTION
radiff2 implements many binary diffing algorithms for data and code.
.Pp
.Bl -tag -width Fl
.It Fl A
Analyze binary after loading it with RCore (see -C) and use -AA to run aaaa instead of aaa.
.It Fl a
Specify architecture (x86, arm, ..)
.It Fl b
Select register size bits for given arch
.It Fl c
Count number of differences.
.It Fl C
Code diffing using graphdiff algorithm. Output columns are: file-a-address, percentatge of most similar function in B file | file-b-address. (Use with -A to analyze the binaries to find more functions)
.It Fl d
Use delta diffing (slower).
.It Fl D
Show disasm instead of hexpairs (honors -a arch and -b bits)
.It Fl g Ar sym | off1,off2
Graph diff output of given symbol, or between two functions, at given offsets: one for each binary.
.It Fl h
Show usage help message.
.It Fl n
Suppress address names (show only addresses) when code diffing.
.It Fl O
Do code diffing with all bytes instead of just the fixed opcode bytes
.It Fl p
Use physical addressing (io.va=0)
.It Fl r
Output in radare commands as a binary patch.
.It Fl x
Show two column hexdump diffing.
.It Fl s
Calculate text distance from two files.
.It Fl t Ar 0\-100
Choose matching threshold for binary code diffing
.It Fl v
Show version information.
.It Fl V
Be verbose sometimes
.El
.Sh SEE ALSO
.Pp
.Xr radare2(1) ,
.Xr rafind2(1) ,
.Xr rahash2(1) ,
.Xr rabin2(1) ,
.Xr rasm2(1) ,
.Xr ragg2(1) ,
.Xr rarun2(1) ,
.Xr rax2(1) ,
.Sh AUTHORS
.Pp
pancake <pancake@nopcode.org>