Comments (7)
Hmm... perhaps a way to explictly refer to facts defined/derived in previous blocks in combination with solution 2 could be the third solution?
from biscuit.
so if i understand correctly, the default would be "only see facts produced by the authority, verifier and current block", and a special keyword (for instance), would make a check operate on those facts + the facts of the previous block?
from biscuit.
I was thinking more of an spefic fact import mechanism.
Like 'import Foo facts from just the second block' kind of thing.
That way one could compose a new block that checks for the facts produced by authority, verifier, the current block, and spefic facts from other prior blocks. This allows for blocks with 'nonsense facts' (alt-facts?) to be ignored while using other facts from that same blocks.
from biscuit.
Oh, that could play well with an idea I have for mimicking 3rd party caveats: allowing blocks to be signed with an extra secret key. In datalog we could add: trust blocks from hex:<public_key>
to add facts and blocks from the relevant pks.
from biscuit.
IIRC one of the use cases was in making a token that would not be valid until specific data appear. Ex: the first or second block has a check requiring the presence of a block signed by a revocation oracle. Until the token is attenuated with data from such an oracle, it will not be usable. That was one of the motivations behind the "check after" idea
from biscuit.
- Having a per-block marker is interesting because it would apply to rules and checks (but makes granular checks more cumbersome)
- Having a scope descriptor
authority | previous (current behaviour) | blocks signed with <private key set>
handles both this use case and 3rd party caveats
from biscuit.
The last biscuit v2 update changed the default to trusting only current + authority block.
3rd party blocks will supersede scope descriptors (see #88 )
from biscuit.
Related Issues (20)
- DID / DPKI integration HOT 3
- Suggested clarification on "Biscuit is a bearer token" HOT 2
- fix authorizer serialization
- check all / check unless behaviour HOT 3
- Question regarding the language specification about Sets HOT 2
- separate v2 and v3 samples HOT 1
- specify operator precedence
- Date & time manipulation
- Scoped rules HOT 1
- ECDSA support HOT 3
- EBNF grammar for the text format HOT 8
- Serialized errors in samples HOT 1
- other set operations
- Block scoping and third-party caveats HOT 7
- biscuitsec.org Down HOT 3
- Extending `+` and `.contains()` to strings HOT 1
- [question] What prevents a bearer from removing an offline attenuation blocks' caveat? HOT 3
- Update default symbol table as last edit to `v2` HOT 8
- breaking format changes in v2 HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from biscuit.