English
Related papers

Related papers: Fluent Session Programming in C#

200 papers

Session is an open-source, public-key-based secure messaging application which uses a set of decentralised storage servers and an onion routing protocol to send end-to-end encrypted messages with minimal exposure of user metadata. It does…

Cryptography and Security · Computer Science 2024-07-04 Kee Jefferys , Maxim Shishmarev , Simon Harman

Research has shown that cryptography concepts are hard to understand for developers, and secure use of cryptography APIs is challenging for mainstream developers. We have developed a fluent API named FluentCrypto to ease the secure and…

Cryptography and Security · Computer Science 2021-08-17 Simon Kafader , Mohammad Ghafari

Many secure communication libraries used by distributed systems, such as SSL, TLS, and Kerberos, fail to make a clear distinction between the authentication, session, and communication layers. In this paper we introduce CEDAR, the secure…

Distributed, Parallel, and Cluster Computing · Computer Science 2011-11-10 Zach Miller , Dan Bradley , Todd Tannenbaum , Igor Sfiligoi

This paper investigates session programming and typing of benchmark examples to compare productivity, safety and performance with other communications programming languages. Parallel algorithms are used to examine the above aspects due to…

Programming Languages · Computer Science 2010-02-05 Andi Bejleri , Raymond Hu , Nobuko Yoshida

We propose a secure and efficient implementation of fungible tokens on Bitcoin. Our technique is based on a small extension of the Bitcoin script language, which allows the spending conditions in a transaction to depend on the neighbour…

Cryptography and Security · Computer Science 2021-02-10 Massimo Bartoletti , Stefano Lande , Roberto Zunino

The evolution of architectures, programming models, and algorithms is driving communication towards greater asynchrony and concurrency, usually in multithreaded environments. We present LCI, a communication library designed for efficient…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-08-26 Jiakun Yan , Marc Snir

Throughput limitations of existing blockchain architectures are one of the most significant hurdles for their wide-spread adoption. Attempts to address this challenge include layer-2 solutions, such as Bitcoin's Lightning or Ethereum's…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-09-13 Alexander Hentschel , Dieter Shirley , Layne Lafrance

The Ethereum blockchain platform supports the execution of decentralised applications or smart contracts. These typically hold and transfer digital currency to other parties on the platform; however, they have been subject to numerous…

Programming Languages · Computer Science 2019-04-16 Franklin Schrans , Daniel Hails , Alexander Harkness , Sophia Drossopoulou , Susan Eisenbach

Session types allow communication protocols to be specified type-theoretically so that protocol implementations can be verified by static type checking. We extend previous work on session types for distributed object-oriented languages in…

Programming Languages · Computer Science 2017-01-11 Simon J. Gay , Nils Gesbert , António Ravara , Vasco T. Vasconcelos

Consensus is an often occurring problem in concurrent and distributed programming. We present a programming language with simple semantics and build-in support for consensus in the form of communicating transactions. We motivate the need…

Programming Languages · Computer Science 2013-05-08 Carlo Spaccasassi , Vasileios Koutavas

We strive to use session type technology to prove behavioural properties of fault-tolerant distributed algorithms. Session types are designed to abstractly capture the structure of (even multi-party) communication protocols. The goal of…

Logic in Computer Science · Computer Science 2017-05-05 Manuel Adameit , Kirstin Peters , Uwe Nestmann

We describe Concurrent C0, a type-safe C-like language with contracts and session-typed communication over channels. Concurrent C0 supports an operation called forwarding which allows channels to be combined in a well-defined way. The…

Programming Languages · Computer Science 2017-01-19 Max Willsey , Rokhini Prabhu , Frank Pfenning

Federated learning (FL) facilitates collaborative training of machine learning models among a large number of clients while safeguarding the privacy of their local datasets. However, FL remains susceptible to vulnerabilities such as privacy…

Cryptography and Security · Computer Science 2024-03-12 Xincheng Li , Jianting Ning , Geong Sen Poh , Leo Yu Zhang , Xinchun Yin , Tianwei Zhang

Blockchains have a two-sided reputation: they are praised for disrupting some of our institutions through innovative technology for good, yet notorious for being slow and expensive to use. In this work, we tackle this issue with…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-02-19 Kian Paimani

Session types using affinity and exception handling mechanisms have been developed to ensure the communication safety of protocols implemented in concurrent and distributed programming languages. Nevertheless, current affine session types…

Programming Languages · Computer Science 2024-09-02 Ping Hou , Nicolas Lagaillardie , Nobuko Yoshida

Session types provide a typing discipline for message-passing systems. However, most session type approaches assume an ideal world: one in which everything is reliable and without failures. Yet this is in stark contrast with distributed…

Programming Languages · Computer Science 2023-05-16 Adam D. Barwell , Ping Hou , Nobuko Yoshida , Fangyi Zhou

This paper presents FLASH 1.0, a C++-based software framework for rapid parallel deployment and enhancing host code portability in heterogeneous computing. FLASH takes a novel approach in describing kernels and dynamically dispatching them…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-07-06 Michael Riera , Masudul Hassan Quraishi , Erfan Bank Tavakoli , Fengbo Ren

FastFlow is a structured parallel programming framework targeting shared memory multicores. Its layered design and the optimized implementation of the communication mechanisms used to implement the FastFlow streaming networks provided to…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-04-25 Marco Aldinucci , Marco Danelutto , Massimo Torquati

Simplicity is a typed, combinator-based, functional language without loops and recursion, designed to be used for crypto-currencies and blockchain applications. It aims to improve upon existing crypto-currency languages, such as Bitcoin…

Programming Languages · Computer Science 2017-12-15 Russell O'Connor

Soft constraints extend classical constraints to represent multiple consistency levels, and thus provide a way to express preferences, fuzziness, and uncertainty. While there are many soft constraint solving formalisms, even distributed…

Programming Languages · Computer Science 2018-02-27 S. Bistarelli , U. Montanari , F. Rossi
‹ Prev 1 2 3 10 Next ›