Abstract
We introduce the branching time temporal logic for specifying differential privacy. Several differentially private mechanisms are formalized as Markov chains or Markov decision processes. Using our formal models, subtle privacy conditions are specified by
. In order to verify privacy properties automatically, model checking problems are investigated. We give a model checking algorithm for Markov chains. Model checking
properties on Markov decision processes however is shown to be undecidable.
D. Liu and L. Zhang—Partially supported by the National Natural Science Foundation of China (Grants No. 61532019, 61761136011, 61472473).
B.-Y. Wang—Partially supported by the Academia Sinica Thematic Project: Socially Accountable Privacy Framework for Secondary Data Usage.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
The MDP we consider is reactive in the sense that all actions are enabled in every state.
References
Alvim, M.S., Andrés, M.E., Chatzikokolakis, K., Degano, P., Palamidessi, C.: On the information leakage of differentially-private mechanisms. J. Comput. Secur. 23(4), 427–469 (2015)
Baier, C., Katoen, J.P.: Principles of Model Checking. The MIT Press, Cambridge (2008)
Baier, C., Kiefer, S., Klein, J., Klüppelholz, S., Müller, D., Worrell, J.: Markov chains and unambiguous Büchi automata. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016. LNCS, vol. 9779, pp. 23–42. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-41528-4_2
Barthe, G., Danezis, G., Grégoire, B., Kunz, C., Zanella-Béguelin, S.: Verified computational differential privacy with applications to smart metering. In: CSF, pp. 287–301. IEEE (2013)
Barthe, G., et al.: Differentially private Bayesian programming. In: CCS, pp. 68–79. ACM (2016)
Barthe, G., Fong, N., Gaboardi, M., Grégoire, B., Hsu, J., Strub, P.Y.: Advanced probabilistic couplings for differential privacy. In: CCS, pp. 55–67. ACM (2016)
Barthe, G., Gaboardi, M., Arias, E.J.G., Hsu, J., Kunz, C., Strub, P.Y.: Proving differential privacy in Hoare logic. In: CSF, pp. 411–424. IEEE (2014)
Barthe, G., Gaboardi, M., Arias, E.J.G., Hsu, J., Roth, A., Strub, P.: Higher-order approximate relational refinement types for mechanism design and differential privacy. In: POPL, pp. 68–79. ACM (2015)
Barthe, G., Gaboardi, M., Gregoire, B., Hsu, J., Strub, P.Y.: Proving differential privacy via probabilistic couplings. In: LICS. IEEE (2016)
Barthe, G., Köpf, B., Olmedo, F., Zanella-Béguelin, S.: Probabilistic relational reasoning for differential privacy. In: POPL, pp. 97–110. ACM (2012)
Bianco, A., de Alfaro, L.: Model checking of probabilistic and nondeterministic systems. In: Thiagarajan, P.S. (ed.) FSTTCS 1995. LNCS, vol. 1026, pp. 499–513. Springer, Heidelberg (1995). https://doi.org/10.1007/3-540-60692-0_70
Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. The MIT Press, Cambridge (1999)
Courcoubetis, C., Yannakakis, M.: The complexity of probabilistic verification. J. ACM 42(4), 857–907 (1995)
Couvreur, J.-M., Saheb, N., Sutre, G.: An optimal automata approach to LTL model checking of probabilistic systems. In: Vardi, M.Y., Voronkov, A. (eds.) LPAR 2003. LNCS (LNAI), vol. 2850, pp. 361–375. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-39813-4_26
Dwork, C., McSherry, F., Nissim, K., Smith, A.: Calibrating noise to sensitivity in private data analysis. In: Halevi, S., Rabin, T. (eds.) TCC 2006. LNCS, vol. 3876, pp. 265–284. Springer, Heidelberg (2006). https://doi.org/10.1007/11681878_14
Dwork, C., Roth, A.: The algorithmic foundations of differential privacy. Found. Trends Theor. Comput. Sci. 9(3–4), 211–407 (2014)
Dwork, C.: Differential privacy. In: Bugliesi, M., Preneel, B., Sassone, V., Wegener, I. (eds.) ICALP 2006. LNCS, vol. 4052, pp. 1–12. Springer, Heidelberg (2006). https://doi.org/10.1007/11787006_1
Fung, B.C.M., Wang, K., Chen, R., Yu, P.S.: Privacy-preserving data publish: a survey of recent developments. ACM Comput. Surv. 42(4), 14:1–14:53 (2010)
Gaboardi, M., Haeberlen, A., Hsu, J., Narayan, A., Pierce, B.C.: Linear dependent types for differential privacy. In: POPL, pp. 357–370 (2013)
Gazeau, I., Miller, D., Palamidessi, C.: Preserving differential privacy under finite-precision semantics. Theor. Comput. Sci. 655, 92–108 (2016)
Ghosh, A., Roughgarden, T., Sundararajan, M.: Universally utility-maximizing privacy mechanisms. In: STOC, pp. 351–360. ACM, New York (2009)
Ghosh, A., Roughgarden, T., Sundararajan, M.: Universally utility-maximizing privacy mechanisms. SIAM J. Comput. 41(6), 1673–1693 (2012)
Hansson, H., Jonsson, B.: A logic for reasoning about time and reliability. Form. Asp. Comput. 6(5), 512–535 (1994)
Ji, Z., Lipton, Z.C., Elkan, C.: Differential privacy and machine learning: a survey and review. CoRR abs/1412.7584 (2014). http://arxiv.org/abs/1412.7584
Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems: Specification. Springer, New York (1992). https://doi.org/10.1007/978-1-4612-0931-7
Mironov, I.: On significance of the least significant bits for differential privacy. In: Yu, T., Danezis, G., Gligor, V.D. (eds.) ACM CCS, pp. 650–661 (2012)
Paz, A.: Introduction to Probabilistic Automata: Computer Science and Applied Mathematics. Academic Press, Inc., Orlando (1971)
Puterman, M.L.: Markov Decision Processes: Discrete Stochastic Dynamic Programming. Wiley Series in Probability and Statistics, vol. 594. Wiley, Hoboken (2005)
Rabin, M.: Probabilistic automata. Inf. Control. 6(3), 230–245 (1963)
Reed, J., Pierce, B.C.: Distance makes the types grow stronger: a calculus for differential privacy. In: ICFP, pp. 157–168. ACM (2010)
Tang, J., Korolova, A., Bai, X., Wang, X., Wang, X.: Privacy loss in apple’s implementation of differential privacy on MacOS 10.12. CoRR abs/1709.02753 (2017). http://arxiv.org/abs/1709.02753
Tschantz, M.C., Kaynar, D., Datta, A.: Formal verification of differential privacy for interactive systems (extended abstract). In: Mathematical Foundations of Programming Semantics. ENTCS, vol. 276, pp. 61–79 (2011)
Tzeng, W.: A polynomial-time algorithm for the equivalence of probabilistic automata. SIAM J. Comput. 21(2), 216–227 (1992)
Winograd-Cort, D., Haeberlen, A., Roth, A., Pierce, B.C.: A framework for adaptive differential privacy. Proc. ACM Program. Lang. 1(ICFP), 10:1–10:29 (2017)
WWDC: Engineering privacy for your users (2016). https://developer.apple.com/videos/play/wwdc2016/709/
Zhang, D., Kifer, D.: LightDP: towards automating differential privacy proofs. In: POPL, pp. 888–901. ACM (2017)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
A Proof of Theorem 1
A Proof of Theorem 1
Proof
The proof follows by a reduction from the emptiness problem for probabilistic automata. A probabilistic automaton [29] is a tuple \(\mathcal {A}= (S,\varSigma ,M,s_0,B)\) where
-
S is a finite set of states,
-
\(\varSigma \) is the finite set of input alphabet,
-
\(M: S\times \varSigma \times S \rightarrow [0,1]\) such that \(\sum _{t\in S} M(s,\alpha ,t)=1\) for all \(s\in S\) and \(\alpha \in \varSigma \),
-
\(s_0\in S\) is the initial state,
-
\(B\subseteq S\) is a set of accepting states.
Each input alphabet \(\alpha \) induces a stochastic matrix \(M(\alpha )\) in the obvious way. Let \(\lambda \) denote the empty string. For \(\eta \in \varSigma ^*\) we define \(M(\eta )\) inductively by: \(M(\lambda )\) is the identity matrix, \(M(x\eta ')=M(x)M(\eta ')\). Thus, \(M(\eta )(s,s')\) denotes the probability of going from s to \(s'\) after reading \(\eta \). Let \(v_B\) denote the characteristic row vector for the set B, and \(v_{s_0}\) denote the characteristic row vector for the set \(\{s_0\}\). Then, the accepting probably of \(\eta \) by \(\mathcal {A}\) is defined as \(v_{s_0}\cdot M(\eta )\cdot (v_B)^c\) where \((v_B)^c\) denotes the transpose of \(v_B\). The following emptiness problem is know to be undecidable [27]:
Emptiness Problem: Given a probabilistic automaton \(\mathcal {A}= (S,\varSigma ,M,s_0,B)\), whether there exists \(\eta \in \varSigma ^*\) such that \(v_{s_0}\cdot M(\eta )\cdot (v_B)^c > 0\)?
Now we establish the proof by reducing the emptiness problem to our model checking problem. Given the probabilistic automaton \(\mathcal {A}= (S,\varSigma ,M,s_0,B)\), assume we have a primed copy \(\mathcal {A}'= (S',\varSigma ,M',s_0',\emptyset )\).
Let \(AP:=\{at_B\}\). Now we construct our MDP where \(\wp (s,a,t)\) equals to M(s, a, t) if \(s,t\in S\) and to \(M'(s,a,t)\) if \(s,t\in S'\). We define the neighbor relation \(N_S:=\{(s_0,s_0'),(s_0',s_0)\}\) by relating states \(s_0,s_0'\). The labelling function L is defined by \(L(s)=\{at_B\}\) if \(s\in B\) and \(L(s)=\emptyset \) otherwise.
Now we consider the formula \(\varPhi = \mathcal {D}_{{1}, {0}} (F at_B)\). For the reduction we prove \(s_0\models \mathcal {D}_{{1}, {0}} (F at_B)\) iff for all \(\eta \in \varSigma ^*\) it holds \(v_{s_0}\cdot M(\eta )\cdot (v_B)^c \le 0\).
First we assume \(s_0\models \mathcal {D}_{{1}, {0}} (F at_B)\). By semantics we have that for all query scheduler \(\mathfrak {Q}\in \varSigma ^\omega \), \({\Pr }_{ N _{S}}^{M_{\mathfrak {Q}}}({s_0}, {F at_B}) \le e \cdot {\Pr }_{ N _{S}}^{M_{\mathfrak {Q}}}({s_0'}, {F at_B})\). Since the set of accepting state in the primed copy is empty, we have \({\Pr }_{ N _{S}}^{M_{\mathfrak {Q}}}({s_0'}, {F at_B})=0\), thus we have \({\Pr }_{ N _{S}}^{M_{\mathfrak {Q}}}({s_0}, {F at_B}) \le 0\). This implies \(v_{s_0}\cdot M(\eta )\cdot (v_B)^c \le 0\) for all \(\eta \in \varSigma ^*\).
For the other direction, assume that all \(\eta \in \varSigma ^*\) it holds \(v_{s_0}\cdot M(\eta )\cdot (v_B)^c \le 0\). We prove by contradiction. Assume that \(s_0\not \models \mathcal {D}_{{1}, {0}} (F at_B)\). Since the relation \(N_S=\{(s_0,s_0'),(s_0',s_0)\}\), there exists \((s_0,s_0')\), and a query scheduler \(\mathfrak {Q}\in \varSigma ^\omega \) such that
which implies \({\Pr }_{ N _{S}}^{M_{\mathfrak {Q}}}({s_0}, {F at_B}) >0\). It is then easy to construct a finite sequence \(\eta \in \varSigma ^*\) with \(v_{s_0}\cdot M(\eta )\cdot (v_B)^c > 0\), a contradiction.
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Liu, D., Wang, BY., Zhang, L. (2018). Model Checking Differentially Private Properties. In: Ryu, S. (eds) Programming Languages and Systems. APLAS 2018. Lecture Notes in Computer Science(), vol 11275. Springer, Cham. https://doi.org/10.1007/978-3-030-02768-1_21
Download citation
DOI: https://doi.org/10.1007/978-3-030-02768-1_21
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-02767-4
Online ISBN: 978-3-030-02768-1
eBook Packages: Computer ScienceComputer Science (R0)