Sitemap
Press enter or click to view image in full size

Member-only story

MAABE: Multi-Authority Attribute-Based Encryption scheme

3 min readNov 17, 2024

--

Last week, I spoke with Brent Waters, who is the co-inventor of ABE [1]:

Press enter or click to view image in full size

Brent continued to work on ABE, and, in 2011, he created a decentralised approach [2]:

Press enter or click to view image in full size

This creates a multi-authority (MA) attribute-based encryption (ABE) scheme, where we can split the signing of the attributes across different authorities.

Let's say that a student needs to pass Exam 1 and Exam 2 in university or Exam 1 and Exam 2 in college. We can create the policy with:

policy:="((university:exam01 AND auth2:exam01) OR 
(university:exam02 AND auth2:exam02))"

attributes1 :="university:exam01 university:exam02"
attributes2 :="auth2:exam01 auth2:exam02"

Next, we can create the key required:

a := abe.NewMAABE()

// create three authorities, each with two attributes
attribs1 := strings.Split(attributes1, " ")
attribs2 := strings.Split(attributes2, " ")

university, err:= a.NewMAABEAuth("university", attribs1)…

--

--

Prof Bill Buchanan OBE FRSE
Prof Bill Buchanan OBE FRSE

Written by Prof Bill Buchanan OBE FRSE

Professor of Cryptography. Serial innovator. Believer in fairness, justice & freedom. Based in Edinburgh. Old World Breaker. New World Creator. Building trust.