Commit Graph

202 Commits

Author SHA1 Message Date
ccremers
0ec70b9de0 - Added lots of debugging info. 2004-10-28 15:23:16 +00:00
ccremers
3673fc689d - Improved roledef printing by adding roledefPrintShort. 2004-10-28 12:56:13 +00:00
ccremers
61457b5f3d - Fixed the agentsOfRunPrint output. It was caused by the agent adding
order.
- Fixed the pruning bug, which was related to this.
2004-10-28 12:33:57 +00:00
ccremers
9a24bb0f21 - Somehow, agentOfRunRole is playing up. I found a bug in the pruning
(untrusted actors), but the fix did not work. It's maybe due to the
  roleInstance variants.
2004-10-27 16:20:12 +00:00
ccremers
461a040d29 - Revised Arachne dot output significantly. It is now based on explicit
ranking instead of the subgraphs. This will make it easier to layout
  e.g. LaTeX MSCs using the same algorithm.
2004-10-27 16:10:58 +00:00
ccremers
2680a2ca7a - Added rank calculation and output. If the subgraphs are removed, this
will allow for better positioning of the graphs. It also helps a lot
  for latex output. In fact, latex output is fairly trivial now.
2004-10-25 14:28:53 +00:00
ccremers
94b3ac7c96 - Added debug code for dot output.
- Push/pop goals are counted now, making the child parameter obsolete.
2004-10-18 13:04:34 +00:00
ccremers
d33ec486ce - Modified -l switch to also serve as proof depth limit. 2004-10-14 15:25:28 +00:00
ccremers
ba832159b1 - Added a new prioritylevel for seemingly public keys, but the splice-as
problem remains.
2004-10-14 15:09:48 +00:00
ccremers
8b48aade68 - Huge effort to make match type 2 (typeflaw generic) matching work.
Problem with goals that turn into tuples, will have to be solved.
2004-08-31 14:31:06 +00:00
ccremers
0e9b7dcf11 - Some added error/bounds detection all around. 2004-08-31 12:35:05 +00:00
ccremers
f5ab30995c - Removed the debugging output. 2004-08-30 22:09:44 +00:00
ccremers
5c90522c55 - Fixed a bug in the pruning algorithm, where intruder runs were also
checked for agent lists, which is false.
2004-08-30 22:08:44 +00:00
ccremers
b04bc86185 - Some minor cleanups. 2004-08-30 21:49:51 +00:00
ccremers
4832e9116c - Added pruning theorem for untrusted actors. 2004-08-30 21:07:45 +00:00
ccremers
d43e3d432f - Ignoring singular variables seems to be a smart choice, although it
implies that the intruder can generate any type. That is not conform
  the usual semantics. So we either change the usual semantics (wise) or
  we make this choice optional.
2004-08-30 20:48:11 +00:00
ccremers
02041cfbab - Fixed binding displays.
- Improved attack dot output.
- goal_graph_create now takes originator assumption into account.
2004-08-30 13:57:16 +00:00
ccremers
1d431dc6f1 - Attack output is a bit broken now for Arachne. Fix. 2004-08-30 06:07:17 +00:00
ccremers
25fa261e30 - Added some comments. 2004-08-28 14:05:38 +00:00
ccremers
c907c1f657 - Added prefixed start nodes to indicate agent initiative in dot output. 2004-08-28 14:00:48 +00:00
ccremers
391c939b83 - New algorithm to draw bindings between runs. Much cleaner. 2004-08-28 13:47:37 +00:00
ccremers
b349b6cef2 - More improvements to the dot output. 2004-08-28 12:42:11 +00:00
ccremers
acb89922f1 - Singular variables need to be bound as well (to ensure ordering is
correct w.r.t. e.g. nonces, if the intruder cannot construct them.)
2004-08-28 12:20:50 +00:00
ccremers
2ddd1eee13 - Improved dot output for Arachne attacks. 2004-08-28 11:43:06 +00:00
ccremers
9d64b837db - Improved roledef printing for NULL, NULL roles (intruder)
- Added graph output in dot format.
2004-08-28 09:24:30 +00:00
ccremers
4420e06e4e - Ignore choose actions when determining Arachne trace length. 2004-08-27 19:15:24 +00:00
ccremers
957b920b98 - Added extra Arachne check for -r0. 2004-08-27 18:26:19 +00:00
ccremers
17ad6de97b - Semistate printing now reports trace length.
- Pruning was wrong, so the shortest attack wasn't always found. Now it
  is.
2004-08-27 18:18:16 +00:00
ccremers
198afa135e - Implemented attack length scanner per claim. Not stored yet. 2004-08-27 18:09:09 +00:00
ccremers
6ccb09297a - Better prune adherence. 2004-08-27 17:37:43 +00:00
ccremers
f90f16fe93 - Arachne engine now respects --prune=2 (and thus the default setting)
somewhat. There is no good definition of length yet, so we don't do
  this yet.
2004-08-27 17:35:23 +00:00
ccremers
21b2c27320 - Niagree claim seems to be working fine now. 2004-08-27 17:25:38 +00:00
ccremers
2decf44bd2 - Checks are now in. Untested though. 2004-08-27 15:02:33 +00:00
ccremers
d7e49028c1 - Added pruning of functions the intruder does not know (e.g. SK) 2004-08-20 14:55:34 +00:00
ccremers
851044ecd0 - Improved the SK lemma, but it is NOT correct yet. 2004-08-20 11:47:00 +00:00
ccremers
72d52a6e12 - Key goals now have priority. This strategy yields complete proofs for
e.g. bke, and reduces states for NSL.
2004-08-20 10:52:40 +00:00
ccremers
baae7ef94a - The proofs now also show a list of open goals at each step. 2004-08-20 09:53:44 +00:00
ccremers
be44ed047a - Fixed some goal selection issues.
- Added note about mirroring model checker semantics.
2004-08-20 09:21:39 +00:00
ccremers
bd84625ae4 - Fixed some more problems. Seems to be stable, although pruning is not
sufficient. Investigate bke-broken.
2004-08-19 15:30:31 +00:00
ccremers
f2bc78cc1f - Improved proof output. 2004-08-19 14:55:21 +00:00
ccremers
8fa7c4e839 - Fixed bug in printing.
- Algorithm should work again.
2004-08-19 14:52:17 +00:00
ccremers
f25f0abd4e - Fixed a memory error. 2004-08-19 14:49:03 +00:00
ccremers
5c15c21832 - Reports on completeness of proofs. 2004-08-19 13:09:35 +00:00
ccremers
15580c6ec9 - Added subrun counters. 2004-08-19 12:47:53 +00:00
ccremers
be2df84f91 - Much improvements to the proof output. 2004-08-19 12:35:51 +00:00
ccremers
c993e17597 - Improving proof output. 2004-08-19 11:37:41 +00:00
ccremers
1180d3cf6f - Added --proof switch for Arachne engine, which outputs the (partial)
proof of correctness.
2004-08-19 10:46:27 +00:00
ccremers
85ac32fbd1 - Claim counting now works. 2004-08-18 20:22:33 +00:00
ccremers
c95630f93b - Improved pruning. 2004-08-18 19:43:58 +00:00
ccremers
0f75efc787 - Fixed bug in interm relation.
- Commented flag for normal version.
2004-08-18 18:41:49 +00:00
ccremers
8583b4ef5c BROKEN
- Improved algorithm.
2004-08-18 18:22:59 +00:00
ccremers
341f519bbb BROKEN
- Works better all the time. Huge shift of main logic. Much better.
2004-08-18 15:46:33 +00:00
ccremers
b2d21f0a8a BROKEN
- Working on new algorithm. Some memory error can occur.
2004-08-18 14:06:14 +00:00
ccremers
eb5a39522b - Compilation again. Now we have the sufficient components, and can
start to reconnect.
2004-08-18 09:57:01 +00:00
ccremers
b2838ed1e4 - Made a start with the new version. 2004-08-17 15:52:52 +00:00
ccremers
bb78c71c90 - Introduced termInTerm (bigterm, smallterm) 2004-08-17 14:11:25 +00:00
ccremers
8869477cf0 - Broken first attempt to work towards simplified method. 2004-08-17 11:30:03 +00:00
ccremers
5dd6127e4b - Added term to binding relation. 2004-08-17 11:03:18 +00:00
ccremers
f384042bfe - Switched -r n behaviour for Arachne, effectively turning it into the
upper bound on runs.
2004-08-16 14:49:41 +00:00
ccremers
536e5bf237 - Fixed some errors in length detection.
- Added more bounds checking.
2004-08-16 13:18:04 +00:00
ccremers
05ee3f7f0a - Added a new warshall. Compare with previous version at home.
- Rewrote the bind_to_*_run functions.
2004-08-16 09:50:37 +00:00
ccremers
c518e68881 BROKEN
- Added broken attempt to solve to problem, where a new instance has to
  be bound, but older variables point to role terms, e.g. RV#1->RV.
  What should happen, is that it becomes RV#1->RV#new. I thought of a
  solution, but it is still somewhat broken. Maybe I should ignore any
  mappings of variables such as RV, which might be included.
2004-08-15 19:58:26 +00:00
ccremers
91a679a129 - Made the output of the semistate include the bindings. 2004-08-15 17:50:41 +00:00
ccremers
071b9bd735 - Improved semistate printing. 2004-08-15 17:16:13 +00:00
ccremers
1f99b16ee8 - Much better implementation of M_0. 2004-08-15 17:07:38 +00:00
ccremers
ca2eeb7235 - Implemented better matching.
- Pruning for untrusted agent lists in the claim run as well.
- Sloppy M_0 implementation; needs to be fixed.
2004-08-15 16:44:54 +00:00
ccremers
c7e290197c - Cycle detection seems to be working. 2004-08-15 14:57:50 +00:00
ccremers
28782548b0 - Implemented cycle detection. Untested. 2004-08-15 14:07:34 +00:00
ccremers
ffe20fb168 - Integrated new binding relation. No closure as yet. 2004-08-15 12:24:27 +00:00
ccremers
0fee6b5797 - Secrecy claims are now handled fairly okayish, as long as only one
term is in the claim. This should be tupling-or, really, for
  convenience.
2004-08-14 19:19:23 +00:00
ccremers
18415c95a2 - Fixed bug in run forcing. 2004-08-14 18:38:43 +00:00
ccremers
68d3bab305 - Improved indenting. 2004-08-14 18:11:30 +00:00
ccremers
bf75e93f4c - Substitutions from roles have to be reset to compare existing runs. 2004-08-14 16:26:57 +00:00
ccremers
1b3ef9e4ac - Improved debugging output by adhering to the level setup. 2004-08-14 16:12:32 +00:00
ccremers
53cb869426 - Claim iteration works nicely now. 2004-08-14 15:59:14 +00:00
ccremers
68b2aa16e7 - Improved semistate printing. 2004-08-14 14:38:30 +00:00
ccremers
74851e0393 - Consistency improvements. 2004-08-14 14:27:46 +00:00
ccremers
f219461c8d - After some trouble, nonce binding is working nicely. 2004-08-14 14:23:21 +00:00
ccremers
e3d16947ee - Output cleanup. 2004-08-14 13:17:37 +00:00
ccremers
afda4f355e - Added much debug info, so we can see send iteration is going wrong.
But why?
2004-08-13 20:56:51 +00:00
ccremers
fe16785982 - Fixed error in error reporting :-\
- Added intruder construction nodes.
- Several cleanups.
2004-08-13 20:09:12 +00:00
ccremers
a3828a028f - Fixed the very annoying bug! The problem was in roleInstance for
Arachne. When a subst was carried out by an Rolename->compoundTerm
  substitution, the compound term was not duplicated, and this caused
  problems at roledef destruction.
2004-08-13 14:35:22 +00:00
ccremers
ff224fee8a - Some cleanup.
- Added iteration limit, just enough to show the error.
2004-08-13 13:25:25 +00:00
ccremers
887b2f3a80 - Made indentDepth availabe in non-debug modes. 2004-08-13 11:11:59 +00:00
ccremers
43caf1707e - Stupid layout fix. 2004-08-13 10:52:20 +00:00
ccremers
54d857ca3c - Fixed a bug in mgu.c (& instead of &&)
- scons shared=yes is now okay for Valgrind.
2004-08-13 10:50:56 +00:00
ccremers
70e5b98d37 - Added more intruder constructs. 2004-08-13 10:25:23 +00:00
ccremers
9153b06012 - Cleanup, improvements across the board. 2004-08-13 08:29:11 +00:00
ccremers
8fcdc9384e - Removed crappy debug effort. 2004-08-12 13:23:21 +00:00
ccremers
b9f4d11d0a - Some cleanup writes, e.g. making initalisation code order correspond
to struct field order.
2004-08-12 13:22:49 +00:00
ccremers
032d322952 - Fixed a bug with role destruction: the intruder goal term was not
duplicated, but destroyed nevertheless.
2004-08-12 12:37:30 +00:00
ccremers
0862ce20da - Added more detailed debug output for Arachne.
- Fixed a header problem for compiler.c.
2004-08-12 12:28:57 +00:00
ccremers
7df10cf568 - Added role/protocol adding constructs for the intruder with Arachne. 2004-08-12 11:55:03 +00:00
ccremers
293c29b88e - Added generic indent for Arachne.
- Some more error reporting.
2004-08-12 11:35:13 +00:00
ccremers
1791699c01 - Moved roledef_shift to role.c 2004-08-12 11:22:49 +00:00
ccremers
0f470cf6a2 - Rewrote roleInstance to cope with Arachne needs.
- Introduced some iterators for e.g. term leaves and roledefs. These are
  not used everywhere yet.
2004-08-12 09:14:31 +00:00
ccremers
ac174b8130 - The work for the non-intruder Arachne part is now mostly done. 2004-08-11 21:04:52 +00:00
ccremers
ec8b515218 - Added more important bits. 2004-08-11 15:05:13 +00:00
ccremers
2191d80885 - Lots of stuff starts to take shape. Nice. 2004-08-11 14:09:12 +00:00
ccremers
f30207b059 - More logic. 2004-08-11 12:08:10 +00:00
ccremers
b74567b2e0 - Added more outlining for the arachne system. 2004-08-11 11:22:20 +00:00
ccremers
9cf3bf3da3 - Setup main arachne infrastructure. 2004-08-11 09:51:17 +00:00