On the use of Attribute-based Encryption in Publicly Verifiable Outsourced Computation

Research output: ThesisDoctoral Thesis

301 Downloads (Pure)


Publicly verifiable outsourced computation (PVC) allows devices with restricted resources to delegate computations to external servers, and to verify the correctness of results. Servers may be rewarded per computation, and so have an incentive to cheat rather than devote resources to a computation. Also, within an organisation, it is likely that individual user permissions will vary and so outsourced actions should be restricted accordingly. This gives rise to two interesting problems in the PVC setting addressed in this thesis: finding a method to revoke and punish cheating servers; and enforcing access control policies that restrict the computations each entity may outsource, compute or read the results of.

In this thesis, we use primitives traditionally used to cryptographically enforce access control policies to construct secure PVC systems that meet these requirements. We first extend prior PVC schemes based on key-policy attribute-based encryption (ABE) to accommodate a broader system model where servers may compute multiple functions and be prevented from performing further computations if found cheating. We then show how a key assignment scheme can provide flexible access control over entities. Finally, we consider an alternative scenario in which input data is held by the server rather than the client, and construct a provably secure instantiation based on ciphertext-policy ABE. We conclude by showing that dual-policy ABE can accommodate both models of outsourced computation and provide a level of access control within a single system.
Original languageEnglish
Awarding Institution
  • Royal Holloway, University of London
  • Crampton, Jason, Supervisor
Thesis sponsors
Award date19 Feb 2016
Publication statusUnpublished - 2016


  • Publicly Verifiable Outsourced Computation
  • Attribute-based Encryption
  • Access Control
  • Revocation
  • Delegation

Cite this