Commit Graph

69 Commits

Author SHA1 Message Date
ccremers
e902aaa260 - Added well-formedness checks. This will only be enabled if a role uses
the 'knows' keyword.
2006-07-31 11:08:51 +00:00
ccremers
df1a56c780 - Iteration seems to work nicely, thank you. 2006-07-27 11:55:24 +00:00
ccremers
4e085f0eb8 - Initial knowledge displayed when running --check. 2006-07-27 10:45:26 +00:00
ccremers
f00392ac3e - Added functional 'knows' keyword. 2006-07-27 10:44:12 +00:00
ccremers
2b9246bb64 - Bug report: this should be fixed. 2006-03-15 08:33:09 +00:00
ccremers
16a59624fe - Revised dot output.
- Reintroduced intruder events.
  - Added colors.
2006-03-14 11:37:28 +00:00
ccremers
5487d3ae90 - From this version onwards, Scyther no longer supports the modelchecker
method. A big cleanup has been started, but is not finished yet, so
  minor artefacts might still remain. These are to be cleaned up later.
2006-03-08 13:58:46 +00:00
ccremers
cf832ca1b1 - Seems to work again, but further testing is needed. 2006-02-27 22:27:09 +00:00
ccremers
b49d13b6ee - [[[ Broken commit. ]]]
Stuff seems to be working again, slightly less efficient though (count
  states).
2006-02-27 16:08:17 +00:00
ccremers
0ce88af6ac - [[[ Broken commit ]]]
Committing partial new Warshall work because it is getting too big.
2006-02-26 15:00:58 +00:00
ccremers
b2e40e07f3 - Some more work on hidelevel backbone.
- Added '--count-states' switch for the Arachne engine.
2006-02-22 08:24:29 +00:00
ccremers
5d2d836d07 - Much work for the skeleton of the Hidelevel lemma. 2006-02-21 20:29:05 +00:00
ccremers
e21627442a - Added 'singular' directive for roles. Syntax:
protocol ns3 (I,R)
  {
    singular role I:
    {
    }
  }
2006-01-02 16:05:53 +00:00
ccremers
724faa8949 - Cleaned up some printf's and warnings in compiler.c
- Added warning for unspecified roles.
2006-01-02 15:29:41 +00:00
ccremers
bceaca28f0 - Improved some type of warnings for e.g. empty prec sets andsoforth. 2005-12-28 14:25:06 +00:00
ccremers
39adf85c6a - Reverted previous version: Tickets can possibly be secret as well
(although this is dubious, as the claiming role will not know the
  contents in many cases)
2005-12-28 12:04:00 +00:00
ccremers
dce2befd50 - Don't add secrecy claims for ticket types. 2005-12-28 11:59:39 +00:00
ccremers
0505aaacd6 - New claim: CLAIM_Reachable
- Added new switches:
  -G,--generate-statespace
  -C,--generate-claims
- Claims are now allowed to have no label (they will be generated
  automatically)
- Output summary shows parameter of claims
- Internally, new symbols can now be generated by
  symbolNextFree(prefixsymbol)
2005-12-28 11:50:17 +00:00
ccremers
ccc4c34823 - Added '--remove-claims' switch to cut off all existing claims. 2005-12-27 13:53:49 +00:00
ccremers
ca4c5674ac - Added check for non-used variables. 2005-12-27 13:44:12 +00:00
ccremers
5b73d707a0 - Rewrite of actor/agent type consitency code: now more aware of
initiator/responder difference.
2005-09-09 10:05:29 +00:00
ccremers
164e325659 - New attack attribute. 2005-07-01 13:25:54 +00:00
ccremers
b6e9841c0f - Moved special terms into their own (very) special file. 2005-06-16 14:10:07 +00:00
ccremers
db18b203a9 - Added "Empty" claim type, which is ignored.
Syntax example:   claim_x(I, Empty);
2005-06-16 11:59:44 +00:00
ccremers
1bdaf7b5d9 - Large rewrite of switch code. Instead of having switch parameters in
the (monstrously large) system structure, there is now a global
  'switchdata' structure originating in switches.c. This makes it much
  easier to see what's happening.
  * Note: although this code has been tested, there might be some
    hiccups, because doing multiple search&replace actions over all
    files is bound to cause some problems.
2005-06-07 15:02:27 +00:00
ccremers
4a42604cb6 - Added Ticket basic term type. Note that this only has consequences for
the Arachne type checking. The net result is that a variable of type
  'Ticket' can always contain any term, even with -m0 or -m1 matching.
2005-06-02 12:14:28 +00:00
ccremers
f22ce0dcb9 - Big change in the Arachne algorithm: decryptor sequences now get
expanded explicitly. This solves a long-standing issue with {k}k
  decryption to yield k. Needs some testing to ensure that it did not
  introduce any new errors.
2005-05-17 18:45:01 +00:00
ccremers
b675b101bf - Added Arachne tuple claims warning. Exits for now at Secrecy tuples. 2005-02-19 14:31:15 +00:00
ccremers
820c2caed8 - Revisited type matching conditions.
- Introduced tuple unfolding stuff for Arachne. -m2 should work now.
2005-01-14 18:18:40 +00:00
ccremers
b607b1e260 - If we run into the time bound, report it. 2005-01-14 13:01:31 +00:00
ccremers
f2a2c8ea14 - Moved role creation into the protocol creation. This will make it
easier to add MSC-style input to the input language compiler later.
2004-11-16 12:51:23 +00:00
ccremers
506e42f841 - Re-indented the files. 2004-11-16 12:07:55 +00:00
ccremers
a38925c9c2 - Added some useful macros to term.h to address subparts (e.g.
TermOp1(t)). Renamed all uses.
2004-11-16 12:06:36 +00:00
ccremers
fce9fae9c3 - Removed warnings from the compiler for conflicting types: not to
stdout anymore, but now in the normal tradition of eprintf and
  globalError.
2004-10-19 12:03:40 +00:00
ccremers
0e9b7dcf11 - Some added error/bounds detection all around. 2004-08-31 12:35:05 +00:00
ccremers
4009ca86ed - Added some sanity checks for read/send/claim role parameters.
- The cl->roles are now distance-ordered. This, the first role is at
  distance 0, etc. This is useful for checking e.g. synchronisation.
2004-08-27 13:40:46 +00:00
ccremers
d8e0e93bcf - Fixed a condition check in termlistAddNew.
- Roles are now computed from prec for each claim.
2004-08-27 12:36:23 +00:00
ccremers
542044e36f - Added preliminary labellist support to the system. 2004-08-27 11:52:43 +00:00
ccremers
275743c1a3 - Fixed a bug where labels where not generated nicely if the symbols
already had been declared in another role.
2004-08-27 10:24:19 +00:00
ccremers
d58fc5ab43 - Made the label naming unique, by adding tuple info with the protocol
name. Now, we can simply test multiple protocol names by
  concatenation.
- Removed the pointer equality leaf hypothesis, as it didn't hold
  anymore.
2004-08-27 10:08:03 +00:00
ccremers
0fc008fe33 - Added keylevels to symbols. This is to help pruning the proofs, for
terms and patterns that do not originate on regular nodes.
2004-08-20 19:16:56 +00:00
ccremers
5c15c21832 - Reports on completeness of proofs. 2004-08-19 13:09:35 +00:00
ccremers
c929fa6ea3 - Debug info should be encapsulated. 2004-08-18 20:22:55 +00:00
ccremers
b2d21f0a8a BROKEN
- Working on new algorithm. Some memory error can occur.
2004-08-18 14:06:14 +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
c3d5123ab0 - Matching is now typed. 2004-08-15 16:08:53 +00:00
ccremers
28782548b0 - Implemented cycle detection. Untested. 2004-08-15 14:07:34 +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
53cb869426 - Claim iteration works nicely now. 2004-08-14 15:59:14 +00:00
ccremers
7df10cf568 - Added role/protocol adding constructs for the intruder with Arachne. 2004-08-12 11:55:03 +00:00