Skip to main content

Showing 1–13 of 13 results for author: Soto-Valero, C

.
  1. Highly Available Blockchain Nodes With N-Version Design

    Authors: Javier Ron, César Soto-Valero, Long Zhang, Benoit Baudry, Martin Monperrus

    Abstract: As all software, blockchain nodes are exposed to faults in their underlying execution stack. Unstable execution environments can disrupt the availability of blockchain nodes interfaces, resulting in downtime for users. This paper introduces the concept of N-version Blockchain nodes. This new type of node relies on simultaneous execution of different implementations of the same blockchain protocol,… ▽ More

    Submitted 7 February, 2024; v1 submitted 25 March, 2023; originally announced March 2023.

    Journal ref: IEEE Transactions on Dependable and Secure Computing, 2023

  2. Challenges of Producing Software Bill Of Materials for Java

    Authors: Musard Balliu, Benoit Baudry, Sofia Bobadilla, Mathias Ekstedt, Martin Monperrus, Javier Ron, Aman Sharma, Gabriel Skoglund, César Soto-Valero, Martin Wittlinger

    Abstract: Software bills of materials (SBOM) promise to become the backbone of software supply chain hardening. We deep-dive into 6 tools and the accuracy of the SBOMs they produce for complex open-source Java projects. Our novel insights reveal some hard challenges for the accurate production and usage of SBOMs.

    Submitted 7 June, 2023; v1 submitted 20 March, 2023; originally announced March 2023.

    Journal ref: IEEE Security & Privacy, 2023

  3. arXiv:2302.08370  [pdf, other

    cs.SE

    Automatic Specialization of Third-Party Java Dependencies

    Authors: César Soto-Valero, Deepika Tiwari, Tim Toady, Benoit Baudry

    Abstract: Large-scale code reuse significantly reduces both development costs and time. However, the massive share of third-party code in software projects poses new challenges, especially in terms of maintenance and security. In this paper, we propose a novel technique to specialize dependencies of Java projects, based on their actual usage. Given a project and its dependencies, we systematically identify… ▽ More

    Submitted 13 October, 2023; v1 submitted 16 February, 2023; originally announced February 2023.

    Comments: 17 pages, 2 figures, 4 tables, 1 algorithm, 2 code listings, 3 equations

  4. The Multibillion Dollar Software Supply Chain of Ethereum

    Authors: César Soto-Valero, Martin Monperrus, Benoit Baudry

    Abstract: The rise of blockchain technologies has triggered tremendous research interest, coding efforts, and monetary investments in the last decade. Ethereum is the single largest programmable blockchain platform today. It features cryptocurrency trading, digital art, and decentralized finance through smart contracts. So-called Ethereum nodes operate the blockchain, relying on a vast supply chain of third… ▽ More

    Submitted 8 August, 2022; v1 submitted 14 February, 2022; originally announced February 2022.

    Comments: 8 pages, 2 figures, 2 tables

    Journal ref: IEEE Computer, 2022

  5. arXiv:2105.14226  [pdf, other

    cs.SE

    A Longitudinal Analysis of Bloated Java Dependencies

    Authors: César Soto-Valero, Thomas Durieux, Benoit Baudry

    Abstract: We study the evolution and impact of bloated dependencies in a single software ecosystem: Java/Maven. Bloated dependencies are third-party libraries that are packaged in the application binary but are not needed to run the application. We analyze the history of 435 Java projects. This historical data includes 48,469 distinct dependencies, which we study across a total of 31,515 versions of Maven d… ▽ More

    Submitted 29 May, 2021; originally announced May 2021.

    Comments: In Proceeding of the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE'2021)

  6. arXiv:2103.09672  [pdf, other

    cs.SE

    DUETS: A Dataset of Reproducible Pairs ofJava Library-Clients

    Authors: Thomas Durieux, César Soto-Valero, Benoit Baudry

    Abstract: Software engineering researchers look for software artifacts to study their characteristics or to evaluate new techniques. In this paper, we introduce DUETS, a new dataset of software libraries and their clients. This dataset can be exploited to gain many different insights, such as API usage, usage inputs, or novel observations about the test suites of clients and libraries. DUETS is meant to sup… ▽ More

    Submitted 17 March, 2021; originally announced March 2021.

    Comments: 5 pages, accepted in Mining Software Repositories Conference 2021

  7. arXiv:2010.07827  [pdf, other

    cs.CV cs.AI

    Interpretation of Swedish Sign Language using Convolutional Neural Networks and Transfer Learning

    Authors: Gustaf Halvardsson, Johanna Peterson, César Soto-Valero, Benoit Baudry

    Abstract: The automatic interpretation of sign languages is a challenging task, as it requires the usage of high-level vision and high-level motion processing systems for providing accurate image perception. In this paper, we use Convolutional Neural Networks (CNNs) and transfer learning in order to make computers able to interpret signs of the Swedish Sign Language (SSL) hand alphabet. Our model consist of… ▽ More

    Submitted 15 October, 2020; originally announced October 2020.

  8. arXiv:2008.08401  [pdf, other

    cs.SE

    Coverage-Based Debloating for Java Bytecode

    Authors: César Soto-Valero, Thomas Durieux, Nicolas Harrand, Benoit Baudry

    Abstract: Software bloat is code that is packaged in an application but is actually not necessary to run the application. The presence of software bloat is an issue for security, for performance, and for maintenance. In this paper, we introduce a novel technique for debloating, which we call coverage-based debloating. We implement the technique for one single language: Java bytecode. We leverage a combinati… ▽ More

    Submitted 19 May, 2022; v1 submitted 19 August, 2020; originally announced August 2020.

  9. Java Decompiler Diversity and its Application to Meta-decompilation

    Authors: Nicolas Harrand, César Soto-Valero, Martin Monperrus, Benoit Baudry

    Abstract: During compilation from Java source code to bytecode, some information is irreversibly lost. In other words, compilation and decompilation of Java code is not symmetric. Consequently, decompilation, which aims at producing source code from bytecode, relies on strategies to reconstruct the information that has been lost. Different Java decompilers use distinct strategies to achieve proper decompila… ▽ More

    Submitted 21 May, 2020; originally announced May 2020.

    Comments: arXiv admin note: substantial text overlap with arXiv:1908.06895

    Journal ref: Journal of Systems and Software, 2020

  10. A Comprehensive Study of Bloated Dependencies in the Maven Ecosystem

    Authors: César Soto-Valero, Nicolas Harrand, Martin Monperrus, Benoit Baudry

    Abstract: Build automation tools and package managers have a profound influence on software development. They facilitate the reuse of third-party libraries, support a clear separation between the application's code and its external dependencies, and automate several software development tasks. However, the wide adoption of these tools introduces new challenges related to dependency management. In this paper… ▽ More

    Submitted 21 January, 2020; originally announced January 2020.

    Comments: Manuscript submitted to Empirical Software Engineering (EMSE)

    Journal ref: Empirical Software Engineering, 2021

  11. arXiv:1908.09757  [pdf, other

    cs.SE

    API Beauty is in the eye of the Clients: 2.2 Million Maven Dependencies reveal the Spectrum of Client-API Usages

    Authors: Nicolas Harrand, Amine Benelallam, César Soto-Valero, François Bettega, Olivier Barais, Benoit Baudry

    Abstract: Hyrum's law states a common observation in the software industry: "With a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of your system will be depended on by somebody". Meanwhile, recent research results seem to contradict this observation when they state that "for most APIs, there is a small number of features that are actually… ▽ More

    Submitted 19 October, 2021; v1 submitted 26 August, 2019; originally announced August 2019.

    Comments: 15 pages, 10 figures, 3 tables, 2 listings

    Journal ref: Journal of Systems and Software 2021

  12. The Strengths and Behavioral Quirks of Java Bytecode Decompilers

    Authors: Nicolas Harrand, César Soto-Valero, Martin Monperrus, Benoit Baudry

    Abstract: During compilation from Java source code to bytecode, some information is irreversibly lost. In other words, compilation and decompilation of Java code is not symmetric. Consequently, the decompilation process, which aims at producing source code from bytecode, must establish some strategies to reconstruct the information that has been lost. Modern Java decompilers tend to use distinct strategies… ▽ More

    Submitted 19 August, 2019; originally announced August 2019.

    Comments: 11 pages, 6 figures, 9 listings, 3 tables

    Journal ref: Proceedings of the 19th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2019)

  13. The Emergence of Software Diversity in Maven Central

    Authors: César Soto-Valero, Amine Benelallam, Nicolas Harrand, Olivier Barais, Benoit Baudry

    Abstract: Maven artifacts are immutable: an artifact that is uploaded on Maven Central cannot be removed nor modified. The only way for developers to upgrade their library is to release a new version. Consequently, Maven Central accumulates all the versions of all the libraries that are published there, and applications that declare a dependency towards a library can pick any version. In this work, we hypot… ▽ More

    Submitted 14 March, 2019; v1 submitted 13 March, 2019; originally announced March 2019.

    Comments: Accepted for publication in 16th International Conference on Mining Software Repositories (MSR) at Montréal, Canada